2016-07-06 55 views
0

我正在使用Selenium和Java并使用JUnit执行测试。它不断告诉我无法找到具有JSON配置文件的Chrome二进制文件

找不到Chrome的二进制

二进制位置不标准,因为我需要测试多个版本。我确切知道Chrome.exe启动程序存在于指定的JSON位置...
它看起来像仍在搜索标准位置的驱动程序。

我已经得到了JSON配置文件:

{ 
    "capabilities":[ 
     { 
     "browserName":"chrome", 
     "platform":"WINDOWS", 
     "chromeOptions":{ 
      "binary":"C:/path/chrome_binary.exe" 
     }, 
     "maxInstance":1 
     } 
    ], 
    "configuration":{ 
     "cleanUpCycle":2000, 
     "timeout":30000, 
     "register":true, 
     "hubPort":4444, 
     "hubHost":"hub.location.net", 
     "maxSessions":1 
    } 
} 

正如你可以看到我在Windows上,所以我试图用斜杠和反斜杠路径,但它并没有在任何方式工作。
ChromeOptions对象应该没问题,我用this official documentation

命令行是:

java -jar selenium-server-standalone.jar -role webdriver -nodeConfig path/to/conf.json -Dwebdriver.chrome.driver=path/to/chromedriver.exe 

在代码中,我创建RemoteWebDriver对象,我只有通过浏览器,版本和平台。它适用于Firefox。例如在JSON节点配置中,我已经设置了firefox_binary,并且在代码中,我没有将它传递给DesiredCapabilities。 Selenium仍然可以使用我使用上面的命令启动的远程Web驱动程序。

谢谢!

+0

文件是否存在于该路径? – ddb

+0

当然可以。我编辑 – buzz2buzz

+0

不应该这是'-Dwebdriver.chrome.driver =路径/到/ chromedriver.exe'你的Windows风格路径?或者你需要编辑? – nilesh

回答

0

终于得偿所愿。没有在任何文档上看到它,因为他们都谈论binarychromeOptions

答案在这里https://stackoverflow.com/a/33151376/4675568,非常感谢他,简而言之:没有chromeOptions,只是chrome_binary关键像firefox。

"capabilities": [{ 
    "browserName": "chrome", 
    "platform": "WINDOWS", 
    "chrome_binary":"C:/path/to/chrome_binary.exe", 
    "maxInstance":1 
}] 
0

也许应该把它应用此更改

"binary":"C://path//chromedriver.exe" 

编辑1

尝试用这种JSON配置文件:

{ 
    "capabilities":[ 
     { 
     "browserName":"chrome", 
     "platform":"WINDOWS", 
     "binary":"C:/path/chrome_binary.exe" 
     "maxInstance":1 
     } 
    ], 
    "configuration":{ 
     "cleanUpCycle":2000, 
     "timeout":30000, 
     "register":true, 
     "hubPort":4444, 
     "hubHost":"hub.location.net", 
     "maxSessions":1 
    } 
} 

最终,也尽量躲避 “/”作为例子如下:

"binary":"C://path//chrome_binary.exe" 

"binary":"C:\/path\/chrome_binary.exe" 
+0

没有工作。 BTW的路径/ to/chrome_binary.exe,对不起,对于阅读答案的人来说可能很奇怪。我编辑了我的问题 – buzz2buzz

+0

,如果你尝试'“binary”:“C:\/path \ /chrome_driver.exe”'? – ddb

+0

没有工作。 PS:这是一个奇怪的路径 – buzz2buzz

0

路径在Windows中使用反斜杠:

"binary":"C:\\path\\chrome_binary.exe" 
+0

我试过没有运气 – buzz2buzz

相关问题