我想使用
selenium-jupiter
JUnit5
扩展进行 CI/CD 运行:
硒木星
不幸的是,所使用的
WebDriverManager
是从互联网动态获取浏览器/驱动程序。
为了允许受控执行,我想强制它仅使用通过 SCM 提供的可执行文件,并始终使用所选浏览器可执行文件的专用版本。
不是系统中安装的。
有没有办法配置
selenium-jupiter
扩展和 WebDriverManager
不访问互联网并使用预定义的浏览器可执行文件?
即使设置
cachePath(String)
和 resolutionCachePath(String)
,仍有一些启发式算法在后台运行。
Selenium-Jupiter内部使用WebDriverManager进行驱动程序管理,恐怕不能跳过。
另一方面,Selenium 将使用 Selenium Manager 进行驱动程序管理。
因此,如果您有自定义浏览器和驱动程序,我的建议是停止使用 Selenium-Jupiter 并实例化您的
ChromeDriver
(假设您使用的是 Chrome),如下所示:
File myDriver = new File("/path/to/chromedriver");
ChromeDriverService driverService = new ChromeDriverService.Builder()
.usingDriverExecutable(myDriver).build();
ChromeOptions options = new ChromeOptions();
File myBrowser = new File("/path/to/chrome");
options.setBinary(myBrowser);
WebDriver driver = new ChromeDriver(driverService, options);