当前,我正在量角器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)
答案 0 :(得分:1)
使用webdriver-manager指定您的chromedriver版本,或者如果运行e2e测试,则使用--webdriverUpdate = false。
答案 1 :(得分:0)
尽管Chrome 84是当前的稳定版本,但webdriver-manager似乎正在安装ChromeDriver 85的问题。许多人报告了此问题。
总体而言,使用webdriver-manager时,您可以暂时对所需的版本进行硬编码,然后告诉量角器要使用哪个版本(因为量角器仍可以尝试安装85并使用它)。
这是复制的解决方法:
我们已将webdriver-manager安装为项目依赖项(npm install --save-dev webdriver-manager
)
我们在运行测试之前先致电webdriver-manager update --versions.chrome 84.0.4147.30
。这将在./node_modules/webdriver-manager/selenium/中安装84 chromedriver版本。 (我们只是在package.json中将其作为npm脚本制作了)
然后,我们更新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时,它可以工作