会话未创建:此版本的ChromeDriver仅支持带有章鱼浏览器版本79的Chrome。

3

我试图使用以下配置在章鱼中运行“ng e2e”命令,但始终收到以下错误:

[07:20:37] E/launcher - session not created: This version of ChromeDriver only supports Chrome version 79
  (Driver info: chromedriver=79.0.3945.16 (93fcc21110c10dbbd49bbff8f472335360e31d05-refs/branch-heads/3945@{#262}),platform=Windows NT 10.0.14393 x86_64)
[07:20:37] E/launcher - SessionNotCreatedError: session not created: This version of ChromeDriver only supports Chrome version 79
  (Driver info: chromedriver=79.0.3945.16 (93fcc21110c10dbbd49bbff8f472335360e31d05-refs/branch-heads/3945@{#262}),platform=Windows NT 10.0.14393 x86_64)
    at Object.checkLegacyResponse (D:\a\1\s\node_modules\selenium-webdriver\lib\error.js:546:15)
    at parseHttpResponse (D:\a\1\s\node_modules\selenium-webdriver\lib\http.js:509:13)
    at D:\a\1\s\node_modules\selenium-webdriver\lib\http.js:441:30
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
From: Task: WebDriver.createSession()
    at Function.createSession (D:\a\1\s\node_modules\selenium-webdriver\lib\webdriver.js:769:24)
    at Function.createSession (D:\a\1\s\node_modules\selenium-webdriver\chrome.js:761:15)
    at Direct.getNewDriver (D:\a\1\s\node_modules\protractor\built\driverProviders\direct.js:77:33)
    at Runner.createBrowser (D:\a\1\s\node_modules\protractor\built\runner.js:195:43)
    at D:\a\1\s\node_modules\protractor\built\runner.js:339:29
    at _fulfilled (D:\a\1\s\node_modules\protractor\node_modules\q\q.js:834:54)
    at D:\a\1\s\node_modules\protractor\node_modules\q\q.js:863:30
    at Promise.promise.promiseDispatch (D:\a\1\s\node_modules\protractor\node_modules\q\q.js:796:13)
    at D:\a\1\s\node_modules\protractor\node_modules\q\q.js:556:49
    at runSingle (D:\a\1\s\node_modules\protractor\node_modules\q\q.js:137:13)
[07:20:37] E/launcher - Process exited with error code 199
An unexpected error occurred: undefined
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! rebar-spa-v2-template@0.0.3 e2e: `ng e2e`

配置如下:

  • 用户代理 =“npm/6.12.1 node/v12.13.1 win32 x64”

Protractor.conf.js:

capabilities: {
    'browserName': 'chrome',
    chromeOptions: {
      args: ['--headless', '--disable-gpu', '--window-size=800,600']
    }
  },

Package.json:尝试了两种解决方案

postinstall: webdriver-manager update --versions.chrome 79.0.3945.36

或者

postinstall: cd ./node_modules/protractor && npm i webdriver-manager@latest

非常感谢任何帮助。

3个回答

2
这个错误信息...
session not created: This version of ChromeDriver only supports Chrome version 79 (Driver info: chromedriver=79.0.3945.16 (93fcc21110c10dbbd49bbff8f472335360e31d05-refs/branch-heads/3945@{#262}),platform=Windows NT 10.0.14393 x86_64)

这段文字的意思是,ChromeDriver 无法启动/生成新的浏览上下文,即 Chrome 浏览器会话。
您主要的问题在于使用的二进制文件版本不兼容,具体如下:
- 您正在使用 chromedriver=79.0.3945.16 - chromedriver=79.0.3945.16 的发布说明清楚地提到了以下内容:
支持 Chrome v79
  • Presumably you are using a Chrome with a version other then chrome= 79.0
  • Possibly the following command fails:

    webdriver-manager update --versions.chrome 79.0.3945.36
    
因此,您当前使用的Chrome浏览器与ChromeDriver v79.0存在明显不匹配。

解决方案

确保按照以下步骤执行可以解决问题:

  • You may need to clean up once:

    webdriver-manager clean
    
  • You have the latest version of and you can install the same using the command:

    webdriver-manager@latest --save
    
  • Execute the following command will solve your issue:

    webdriver-manager update
    
  • Upgrade Chrome to the latest stable release:

    webdriver-manager update --versions.chrome 79.0.3945.88
    

以上解决方案在本地主机上运行良好,但在章鱼部署中无法正常工作。 - Arun Singh
我已经按照上述步骤进行了操作,但仍然无法正常工作;看起来webdriver-manager无论如何都没有更新。 “scripts”:{ “postinstall”:“webdriver-manager clean && npm install webdriver-manager@latest && webdriver-manager update && webdriver-manager update --versions.chrome 79.0.3945.88” } - Arun Singh
尝试使用较旧版本的Chrome --chrome --versions.chrome=78.0.3904.97 - Sankalan Parajuli

0

当我的系统在后台下载Chrome 90时,我收到了这条消息,尽管我的浏览器仍然显示89(公平地说,它提示我更新)。我尝试了一些方法,但最终我只是运行了npm uninstall chromedriver,然后运行npm install chromedriver,一切又开始正常工作了。虽然不是理想的解决方案,但我很高兴我的测试能够运行。

编辑:

我注意到运行上述命令会更新我的package.json文件,因此现在它里面写着"chromedriver": "^90.0.0"。我猜我可以自己进行版本更改,然后运行npm install chromedriver来下载更新的驱动程序文件。下次我会尝试这样做。


0
我的问题是因为chromedriver是全局安装的。只需要执行npm i chromedriver -g即可解决。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接