假设我有一些用Selenium WebDriver编写的自动化测试。
据我所知,我可以使用dockerized Firefox浏览器,甚至可以使用Selenium Grid。
但是我的问题是,相对于standart firefox浏览器,docker firefox有什么优势?
在没有docker的标准Selenium Grid上,关于docker中的Selenium Grid的问题是相同的。
谁能告诉我为什么一个比另一个更好?或者在什么情况下最好在Selenium测试中使用docker?
一些Docker优势:
Docker可以为每个测试提供干净和隔离的环境。 Docker可以帮助您扩展浏览器的使用量(无需设置任何类型的VM-只需在任何地方安装docker并运行更多浏览器即可) Docker可以帮助并行运行一个浏览器的多个版本
一些缺点:
您看不到内部发生什么,直到在容器中获得VNC服务器您需要一些编排工具来自动运行这些容器您需要安装docker
您可以查看一些有助于Selenium和docker的项目:
https://github.com/aerokube/selenoid(非常快速且可扩展的工具,可以在任何类型的环境上使用-本地,独立,具有一个二进制文件和2MB Docker容器) https://github.com/zalando/zalenium(可以将一些罕见的浏览器重定向到外部提供程序)