3

有没有办法告诉chromedriver(Chrome 中的webdriver实现)使用 Canary、Beta 或当前生产的 chrome?

4

3 回答 3

9

您可以要求 ChromeDriver 在非标准位置使用 Chrome 可执行文件

ChromeOptions options = new ChromeOptions();
options.setBinary("/path/to/other/chrome.exe");

在 Mac OS X 上,这应该是实际的二进制文件,而不仅仅是应用程序。例如,/Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[通过chromedriver 功能和开关]

于 2013-08-28T22:31:30.427 回答
4

实习生中执行此操作的方法是通过以下配置

capabilities: {
    'selenium-version': '2.35.0',
    'chrome': {chromeOptions: {'binary': '/Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary'}},
},

此外,如果您要直接配置 selenium 节点,请按以下步骤传递配置:

{
"capabilities": [
    {
        "browserName": "chrome",
        "platform": "MAC"
    },
    {
        "browserName": "chromeCanary",
        "platform": "MAC",
        "chromeOptions": {
            "binary": "/Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary"
        },
        "maxInstances": 1,
        "seleniumProtocol": "WebDriver"
    },
    {
        "browserName": "firefox",
        "platform": "MAC"
    }
],
"configuration": {
    "host": "localhost",
    "port": 8989,
    "hubPort": 4444,
    "hubHost": "localhost"
}

}

于 2013-08-29T13:33:04.480 回答
0

应该是这个 Google Chrome Canary.app 而不仅仅是 Google Chrome.app。
尝试这个:

options.setBinary("/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary");
ChromeDriver driver = new ChromeDriver(options);
于 2018-03-02T19:12:27.287 回答