Я хочу запустить несколько версий Internet Explorer на одном компьютере с помощью Selenium WebDriver с Docker вместо Virtual Machines. Насколько я знаю, Docker работает на полностью Linux, что сделает IE в Docker невозможным. Я только спрашиваю, потому что я вижу Докера, работающего над Microsoft Azure.
Можно ли подключиться к Internet Explorer?
Ответ 1
В настоящее время Docker не работает с приложениями на базе Windows. Docker в Azure - это Docker, работающий на виртуальной машине Linux в Azure. С появлением Docker для Windows вы могли бы подумать, что это возможно, однако IE/Edge не поддерживает режим без головы. Microsoft объявила, что Edge переходит на хром, что, надеюсь, в конечном итоге принесет безголовый режим в IE/Edge. Docker никогда не будет поддерживать среду графического интерфейса, это противоречит их миссии.
Ответ 2
Вы можете установить вино и IE6 или IE7. Думаю, вы предпочтете IE 10 или IE11.
Посмотрите, например, на
https://hub.docker.com/r/tianon/wine/
или
https://hub.docker.com/r/jess/wine/,
и, согласно winhq.org, вы можете использовать устаревший браузер, такой как IE7, если вы измените предыдущие файлы Docker.
Не забывайте, что у вас не будет доступной библиотеки DLL с вином.
Ответ 3
Тем не менее, нет официального подхода к запуску IE/EDGE внутри докера, так как " нет образов докера Windows с графическим интерфейсом, поэтому мы не можем протестировать IE11, EDGE ".
Но мы можем установить виртуальную коробку и сделать это.
Этот подход добавляет дополнительный уровень виртуализации [Nesting of virtualization] поверх докера, чтобы обеспечить выполнение IE/Edge, и я думаю, что в ближайшем будущем это может привести к проблемам с производительностью для тяжелого тестирования.
Если тестирование Selenium - это то, что вы ищете, и у вас нет большой нагрузки, вы можете попробовать подход, упомянутый в ссылке.
Youtube - контейнеры Selenium для Windows в Docker под Linux
Ответ 4
IE 6/7/8 с сервером селена можно использовать в докере, используя этот образ: https://github.com/sormy/docker-oldie
Ответ 5
Microsoft выпустила новую функцию под названием Windows Sandbox как часть Windows 10 1903. Я полагаю, что она предназначена для того, чтобы заполнить этот определенный пробел и позволяет выполнить некоторые настройки до запуска Sandbox. В настоящее время я изучаю, можем ли мы использовать этот подход для нашего собственного тестирования Selenium, но я призываю других также проверить его.