SessionNotCreatedException:消息:未创建会话:此版本的ChromeDriver仅支持Chrome版本85

时间:2020-07-24 09:32:28

标签: protractor protractor-net

当前,我正在量角器UI测试。到目前为止,我的测试用例运行正常,但是突然显示出一个webdriver问题。我当前的Chrome版本是84。但是selenium驱动程序期望的版本是85。版本85仍未发布。

[14:56:46] E/launcher - session not created: This version of ChromeDriver only supports Chrome version 85
  (Driver info: chromedriver=85.0.4183.38 (9047dbc2c693f044042bbec5c91401c708c7c26a-refs/branch-heads/4183@{#779}),platform=Windows NT 10.0.17134 x86_64)
[14:56:46] E/launcher - SessionNotCreatedError: session not created: This version of ChromeDriver only supports Chrome version 85
  (Driver info: chromedriver=85.0.4183.38 (9047dbc2c693f044042bbec5c91401c708c7c26a-refs/branch-heads/4183@{#779}),platform=Windows NT 10.0.17134 x86_64)

3 个答案:

答案 0 :(得分:1)

使用webdriver-manager指定您的chromedriver版本,或者如果运行e2e测试,则使用--webdriverUpdate = false。

(请参阅:https://github.com/angular/protractor/issues/5460

答案 1 :(得分:0)

尽管Chrome 84是当前的稳定版本,但webdriver-manager似乎正在安装ChromeDriver 85的问题。许多人报告了此问题。

我发布了a workaround in issue 376

总体而言,使用webdriver-manager时,您可以暂时对所需的版本进行硬编码,然后告诉量角器要使用哪个版本(因为量角器仍可以尝试安装85并使用它)。

这是复制的解决方法:

  1. 我们已将webdriver-manager安装为项目依赖项(npm install --save-dev webdriver-manager

  2. 我们在运行测试之前先致电webdriver-manager update --versions.chrome 84.0.4147.30。这将在./node_modules/webdriver-manager/selenium/中安装84 chromedriver版本。 (我们只是在package.json中将其作为npm脚本制作了)

  3. 然后,我们更新protractor.conf文件,以在exports.config的根目录中包含以下行:chromeDriver:"./node_modules/webdriver-manager/selenium/chromedriver_84.0.4147.30.exe" **

量角器仍安装chromedriverr 85,但它将使用84版本。

**在本例中,我们在docker中运行量角器测试,但主要在Windows上进行开发。因此,我更新了protractor.conf以使其具有以下一行,使其可以在以下任一目录中使用: chromeDriver: process.platform === "win32" ? "./node_modules/webdriver-manager/selenium/chromedriver_84.0.4147.30.exe" : "./node_modules/webdriver-manager/selenium/chromedriver_84.0.4147.30"

答案 2 :(得分:0)

我遇到了同样的问题,但是当我更新量角器的最新版本为7.0.0时,它可以工作