如何在Jenkins托管网格上使用Chromedriver设置Selenium
我只是用硒做我的第一步。我成功地设置了一个测试(Firefox驱动程序),在Jenkins上的Selenium网格上运行(使用Jenkins Selenium网格插件)。我还在运行Jenkins的机器(Server2003 64位)上安装了Chromdriver插件和Chrome本身。 为所有用户安装了Chrome(在C:\Program Files(x86)\Google\Chrome\Application\Chrome.exe中)。问题是:一旦我尝试使用Chromedriver,我就会得到如何在Jenkins托管网格上使用Chromedriver设置Selenium,selenium,jenkins,jenkins-plugins,selenium-chromedriver,Selenium,Jenkins,Jenkins Plugins,Selenium Chromedriver,我只是用硒做我的第一步。我成功地设置了一个测试(Firefox驱动程序),在Jenkins上的Selenium网格上运行(使用Jenkins Selenium网格插件)。我还在运行Jenkins的机器(Server2003 64位)上安装了Chromdriver插件和Chrome本身。 为所有用户安装了Chrome(在C:\Program Files(x86)\Google\Chrome\Application\Chrome.exe中)。问题是:一旦我尝试使用Chromedriver,我就会得到
UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.
因为Firefox测试运行良好,所以“浏览器启动”一定有问题?!
所以第一个问题是:Chromdriver假设的chrome二进制文件的默认位置是什么?
第二个问题:如何解决这个问题?是否要设置eEnvironment属性?或者我可以简单地将路径设置为chrome.exe的位置
更新:我在附近挖了一点,我想我遇到了或。是否有解决此问题的方法 您可以将其用作节点设置代码: java-jar selenium-server-standalone-2.19.0.jar-Dwebdriver.chrome.driver=“C:\java\chromedriver.exe”-角色节点-hub-browser“browserName=internetexplorer,version=8,platform=WINDOWS”-browser“browserName=chrome,version=17,platform=WINDOWS”-browser“browserName=firefox,version=9,platform=WINDOWS”-浏览器browserName=opera,版本=11,平台=WINDOWS
因此chromedriver二进制文件有直接的指向性,它是一个chromedriver.exe而不是普通的chrome.exe。我有类似的问题,它对我有效。我在selenium group中问了同样的问题: 那里提供的解决方案对我不起作用,但可能对你起作用?
(在jenkins上为chromedriver设置路径)启动节点时是否指定了
-Dwebdriver.chrome.driver=PATH/To/chromedriver
添加这些可能会有所帮助。我自己也经历了同样的过程 使用可设置selenium网格。
通过使用,您可以自动安装chrome驱动程序。
使用可以创建矩阵作业 首次安装问题 安装Chromedriver插件后,需要几分钟时间下载并在自动安装后准备就绪。 可能是从属服务器在主服务器完全安装之前尝试安装chromedriver,因此无法查找下载位置。 重新启动从机将使其重试并在从机上安装chromedriver 在每个从机和主机上,您最终应该得到一个
$JENKINS\u HOME\tools\chromedriver\chromedrive.exe
,您可以在Chrome[驱动程序]的JENKINS Selenium插件配置中参考它二进制路径为tools\chromedrive\chromedriver.exe
,Jenkins将为您预先设置从属$Jenkins_HOME
。
已将Chrome安装到默认位置,该位置原来是C:\ProgramFiles(x86)\Google\Chrome\Application\Chrome.exe
,与所述位置相同
此时,我可以成功地运行测试作业,而不会出现您显示的错误
DesiredCapabilities capability = DesiredCapabilities.chrome();
WebDriver driver = new RemoteWebDriver(new URL("http://Jenkins.ip.here:4444/wd/hub"), capability);
driver.get(siteBase.toString());
String page = driver.getPageSource();
所以有些其他事情要考虑
- 更改了jenkins selenium配置后,您是否重新启动了selenium服务,在配置更改后,它似乎会停止这些服务。配置是否指定了实例
- 如果是安装位置问题,您可以使用更改测试用例中的安装位置选项
ChromeOptions options = new ChromeOptions(); options.setBinary("/path/to/other/chrome/binary");
。错误命令失败,退出代码为1
。有什么想法吗?