Ant*_*des 11 selenium selenium-webdriver docker dockerfile docker-compose
如果我想在带有可见(非无头)浏览器的 Docker 容器中运行 Selenium 测试,我有哪些选择?
请考虑使用Zalenium ( https://opensource.zalando.com/zalenium/ )。Zalenium 的标题是 - 一个灵活且可扩展的基于容器的 Selenium Grid,具有视频录制、实时预览、基本身份验证和仪表板。
如上所述,您可以检查在浏览器上运行的测试用例的实时预览。
PS:- Zalenium 是一个构建在 Selenium Grid 之上的包装器
Docker是一个软件容器平台,提供操作系统的虚拟化。在Docker中,所有软件部分都被组织为容器,包括操作系统、软件、依赖项、环境变量等。容器可以在不同用户之间共享,从而实现软件和服务的快速安装和运行,这使得Docker易于自动化测试,因为相关容器可以作为自动化测试的一部分下载并运行。Docker 也是安全的,因为它作为主机上的独立进程运行。
需要注意的是,Docker具有隔离性、安全性和可移植性。但是,没有 GUI,并且它不能以裸机速度运行。
回答您的问题:
我是否需要使用远程显示查看器(例如 VNC)?:根据文章GUIdock-VNC:使用图形桌面共享系统为容器化软件提供基于浏览器的界面Docker 可以在 Linux 主机上本机运行,而需要小型 Linux VM 才能在 Mac OS 和 Windows 上提供虚拟化服务系统。在非 Linux 系统上,单个 Docker 容器由迷你虚拟机、Docker 软件层和软件容器组成。但最近,Windows 和 Mac OS 中添加了对操作系统级虚拟化的支持。适用于 Windows 和 Mac OS 的 Docker Beta 版本现已推出,允许 Docker 在本机运行。
可以在主机上使用浏览器吗?:不,因为没有用户界面。但是,要获得测试执行的直观视图,您可以安装X Server Display
.
这样你就可以看到结果:
要以可视化方式查看结果,您可以使用 Allure 报告,如下所示:
如何使用 Docker 运行 Selenium WebDriver?
我的结论是,执行此操作的规范方法是在 Docker 容器上使用轻量级桌面环境(例如 LXDE)运行 X。然后您可以使用 VNC 客户端连接到它。无法在主机上使用浏览器。
对于其他选项,请参阅其他答案。
归档时间: |
|
查看次数: |
5883 次 |
最近记录: |