7

我已经使用 启动了服务器webdriver-manager start,但是当我尝试运行量角器时出现此错误:

Using the selenium server at http://127.0.0.1:4444/wd/hub
[launcher] Running 1 instances of WebDriver
ERROR - Unable to start a WebDriver session.

C:\...\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\atoms\error.js:113
  var template = new Error(this.message);
                 ^
UnknownError: unknown error: cannot find Chrome binary

我的配置文件如下所示:

exports.config = {
    specs: [
        'test/*.js'
    ],

    capabilities: {
        'browserName': 'chrome'
    },
    seleniumAddress: 'http://127.0.0.1:4444/wd/hub'

};

我还尝试指向功能对象中的二进制文件以及添加 chromeDriver 和 seleniumServerJar 键无济于事。有任何想法吗?

4

2 回答 2

11

根据相关的 github 问题,问题是chromedriver找不到chrome浏览器可执行文件-在不同的操作系统上它在不同的地方搜索它。

您需要在预期的位置安装 chrome ,或者在设置中指定可执行文件的路径:chromedriverchromebinary

capabilities: {
    "browserName": "chrome",
    "chromeOptions": {
        binary: "D:/Program Files/Chrome/chrome.exe",
        args: [],
        extensions: [],
    }
},
于 2014-12-15T21:50:53.480 回答
0

我使用 JHipster 生成了代码,并且在 e2e 无法正常工作的地方出现了类似的错误。我提供了二进制路径。但是在npm run e2e浏览器打开并显示data;在地址栏中。

我在 args 之后的 chromeOptions 末尾改组并提供了二进制文件,并且它起作用了。

capabilities: {
        browserName: 'chrome',
        chromeOptions: {
            args: process.env.JHI_E2E_HEADLESS
                ? [ "--headless", "--disable-gpu", "--window-size=800,600" ]
                : [ "--disable-gpu", "--window-size=800,600" ],
            binary: "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe"
        }
    }

注意:当出现不支持的 webdriver 版本错误时,我还必须更新 chrome 版本。

于 2019-12-20T10:23:15.820 回答