如何在代码中为远程chromedriver指定“二进制”路径?

时间:2014-10-01 03:05:54

标签: selenium-webdriver codeception selenium-chromedriver

我正在尝试使用带代码的远程chromedriver。我现在能够连接到chromedriver,因为如果我不启动它,我会得到一个不同的错误(经过很长的超时)。但是,chromedriver无法在该Windows VM上启动chrome,因为它没有安装在它正在搜索它的路径中。我试图覆盖它,但无法找到为这些选项设置代码的方法。

这是我在acceptance.suite.yml中尝试的内容:

    WebDriver:
        host: 10.0.15.15
        port: 9515
        url: 'http://www.box.dev'
        browser: 'chrome'
        capabilities:
            binary: "C:\\\\Program Files (x86)\\\\Google\\\\Chrome\\\\Application\\\\chrome.exe"

我用\ \ \\ \\和/尝试了二进制格式的几种变体。 Chrome只是没有出现...... chromedriver的“输出”并不多,所以我对此有点盲目......

2 个答案:

答案 0 :(得分:0)

chromedriver应该在主机系统上运行。您必须使用一个选项启动selenium,该选项表示chromedriver.exe所在的selenium。

java -jar selenium-server-standalone-2.41.0.jar -role node -hub http://www.box.dev:9515/register/grid Dwebdriver.chrome.driver="C:/Users/me/Downloads/chromedriver.exe"

然后你只需要在你的代码配置中说,你想使用浏览器chrome(它应该安装在那里)。

答案 1 :(得分:0)

在Windows上适用于我的acceptance.suite.yml看起来像。

capabilities:
    chromeOptions:
        args: ["disable-infobars", "headless","disable-gpu", "window-size=1920x1080"]
        binary: "C:/Users/***/chrome.exe"