如何运行无头的selenium脚本,独立于主机和浏览器

问题描述 投票:2回答:1

我想在CI作业上运行一个用Java构建的无头selenium“脚本”,独立于主机(和浏览器)。

我可以构建一个jar并在终端上运行“脚本”,我只需要小心指向并配置正确的驱动程序,具体取决于我运行脚本的操作系统和主机的浏览器。但是,在CI主机上,如果它们完全可用,我不一定控制主机和浏览器。

所以我想让脚本的执行独立于脚本运行的主机和浏览器。它可以在Jenkins,Travis,Gitlab CI等的从属实例上运行。

之前提出的一些问题非常针对给定的主机和浏览器组合。我可以让主机摆脱问题并让浏览器可用,例如,通过容器。

如果浏览器可用作容器图像,我可以针对不同的浏览器运行脚本,每个浏览器都有自己的图像。我已经为这些浏览器实例准备了适当的驱动程序。

这是否可行,我能做到这一点的最简单方法是什么?

java docker jenkins selenium-webdriver continuous-integration
1个回答
0
投票

这是可行的。如“How to run Selenium scripts in multiple browsers from Jenkins ”所示,可以使用浏览器提升docker镜像,然后使用Remote WebDriver连接到该浏览器。

Selenium grid,也引用了该问题的答案是一个可行的选项,同时提出任何给定浏览器的多个节点,对并发场景有用,这不是这个问题的特殊情况。

© www.soinside.com 2019 - 2024. All rights reserved.