我只是用Selenium来完成我的第一步。我成功地设置了一个测试(Firefox驱动程序),在我的Jenkins上使用Selenium网格运行(使用Jenkins-Selenium-Grid插件)。我还在运行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二进制文件的默认位置是什么? 第二个问题:如何解决这个问题?是否有环境属性设置?或者我可以简单地将PATH设置为chrome.exe的位置。
答案 0 :(得分:5)
您可以将其用作节点设置代码:
java -jar selenium-server-standalone-2.19.0.jar -Dwebdriver.chrome.driver =“C:\ Java \ chromedriver.exe”-role node -hub http://localhost:4444/grid/register -browser“browserName = internet explorer,version = 8,platform = WINDOWS“-browser”browserName = chrome,version = 17,platform = WINDOWS“-browser”browserName = firefox,version = 9,platform = WINDOWS“-browser”browserName = opera,version = 11中,平台= WINDOWS“
所以有直接指向chromedriver二进制文件,它是一个chromedriver.exe而不是常见的chrome.exe。我有类似的问题,它对我有用。
答案 1 :(得分:5)
我自己也经历了同样的过程。
使用Selenium Plugin可以设置硒网格 使用Chromedriver Plugin,您可以自动安装Chrome驱动程序 使用Selenium Axis Plugin可以创建矩阵作业。
第一次安装问题 安装Chromedriver插件后,可能需要几分钟才能下载并在自动安装后做好准备。 可能是在完全安装主服务器之前,从服务器尝试安装chromedriver,因此无法查找下载位置。 重新启动从站将导致它再次尝试并将chromedriver安装在从站上。
在每个奴隶和主人身上,你最终应该得到$JENKINS_HOME\tools\chromedriver\chromedrive.exe
,你可以在Jenkins Selenium插件配置中将Chrome [驱动程序]二进制路径引用为tools\chromedrive\chromedriver.exe
,Jenkins将在前面添加$JENKINS_HOME
特定于奴隶C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
。
将Chrome安装到默认位置,结果与所描述的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();
相同。
此时我可以成功运行测试作业,而不会显示您显示的错误。
ChromeOptions options = new ChromeOptions();
options.setBinary("/path/to/other/chrome/binary");
还有其他一些需要考虑的事情
如果是安装位置问题,您可以使用
更改测试用例中的安装位置选项{{1}}
答案 2 :(得分:1)
您在启动节点时是否指定了-Dwebdriver.chrome.driver=Path/To/ChromeDriver
?
添加此功能可能有所帮助。
答案 3 :(得分:0)
我在硒组中问了同样的问题:
https://groups.google.com/forum/?fromgroups#!topic/selenium-users/-3LJ3wma3RE
那里提供的解决方案对我没有用,但可能对你有用吗? (在jenkins上为chromedriver设置PATH)