webdriver-manager: webdriver-manager update downloads an incompatible version of chromedriver
Now that Chrome 74 is the stable version, our unit tests are no longer working. Looking into the issue, we see that Chrome 74 is out, but webdriver-manager update
is downloading 2.46 instead of the correct version of 74.0.3729.6
.
Even if we run the command with the correct version, it is failing:
webdriver-manager update --versions.chrome=74.0.3729.6
webdriver-manager: using project version 12.1.2
[11:16:39] E/downloader - undefined
[11:16:39] I/update - chromedriver: file exists /Users/andrew/development/work/client/dev/client-source/node_modules/webdriver-manager/selenium/chromedriver_74.0.3729.6.zip
[11:16:39] I/update - chromedriver: unzipping chromedriver_74.0.3729.6.zip
(node:57948) UnhandledPromiseRejectionWarning: Invalid filename
(node:57948) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
Opening the node_modules/webdriver-manager/selenium/update-config.json
I can see that it is saying 2.46 is the latest instead of 74.0.3729.6
From http://chromedriver.chromium.org/:
Latest stable release: ChromeDriver 74.0.3729.6
This is blocking our ability to test our code. I’d appreciate any work-around if any is known in getting Chrome 74 working with webdriver-manager
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Reactions: 9
- Comments: 36 (15 by maintainers)
Commits related to this issue
- feat(builtin): change default node version to 10.16.0 Also update CircleCI image to 10.16.0 as well as the CHROMEDRIVER_VERSION_ARG env. Lock needed updating to get the latest webdriver-manager that ... — committed to gregmagolan/rules_nodejs by gregmagolan 5 years ago
- feat(builtin): change default node version to 10.16.0 Also update CircleCI image to 10.16.0 as well as the CHROMEDRIVER_VERSION_ARG env. Lock needed updating to get the latest webdriver-manager that ... — committed to gregmagolan/rules_nodejs by gregmagolan 5 years ago
- feat(builtin): change default node version to 10.16.0 Also update CircleCI image to 10.16.0 as well as the CHROMEDRIVER_VERSION_ARG env. Lock needed updating to get the latest webdriver-manager that ... — committed to gregmagolan/rules_nodejs by gregmagolan 5 years ago
- feat(builtin): change default node version to 10.16.0 Also update CircleCI image to 10.16.0 as well as the CHROMEDRIVER_VERSION_ARG env. Lock needed updating to get the latest webdriver-manager that ... — committed to gregmagolan/rules_nodejs by gregmagolan 5 years ago
- Update to node 10.16.0 default for node_repositories (#883) * build: fix in check_deps.sh * feat(builtin): change default node version to 10.16.0 Also update CircleCI image to 10.16.0 as well a... — committed to bazelbuild/rules_nodejs by gregmagolan 5 years ago
Update protractor/webdriver-manager to the latest version.
Looks to be working only if the default version is used. We always specify the version as our jenkins machines have a fixed chrome version and therefore we want to specify the webdriver version. This used to work, but now it is reporting errors in the console.
Command that is failing:
Output
Using this command does not report the errors:
For us, stable chrome is still 84, but webriver manager downloads chromedriver 85 …
@cnishina Is there a workaround for this?
We’re installing
stable
google-chrome
from https://dl.google.com/linux/chrome/deb (currently version 74).When supplying
versions.chrome
, update fails with the following:When not supplying
versions.chrome
, it installs chromedriver version 75:When trying to run tests in protractor, we then get the following error:
This solution works for me.
npm i webdriver-manager@latest
npm i chromedriver --chromedriver_version=LATEST
npm uninstall protractor & npm install --save-dev protractor
For me LATEST downloaded chromedriver 85 and Official release of Chrome is 84…
Tried to update version of chromdriver but it’s still running wrong version
This issue is back 😦 now it’s happening with Chrome 79.0.3945, on AzureDevops it downloads 79.0.3945.36 but azure only supports 79.0.3945.16 and there’s NO way to force webdriver to use this exact version. it automatically downloads the LATEST on 79.0.3945.XXX and this is breaking my deployment.
I just released 12.1.4. This should fix the issues we are seeing with chromedriver 75 and chrome 74 mismatches. Also you should be able to download
--versions.chrome 74.0.3729.6
with 12.1.4. This was broken in 12.1.3.Could I get some verifiers that 12.1.4 is working for you? @arawinters @xiaofuh @scooper91 @vsravuri @arobinson @macroking
@cnishina
Verified both “webdriver-manager update” & “webdriver-manager update --versions.chrome 74.0.3729.6” with Protractor 5.4.2, ChromeDriver “chromedriver_74.0.3729.6.zip” is downloaded correctly.
Thanks again for fixing this issue.
@cnishina I have Chrome driver v75 problem again. It downloads it by default:![image](https://user-images.githubusercontent.com/42673621/67401487-e6b5b880-f5b7-11e9-8143-67c10698b31d.png)
More info on the StackOverflow post: https://stackoverflow.com/questions/55910242/when-using-protractor-5-4-2-webdriver-manager-downloads-2-46-which-is-not-compa/55911176#55911176
Same here. How can webdriver use a chrome version that is not even published? Chrome tells me everything is up to date.
Edit: It worked yesterday. Started up the computer this morning and wanted to run the tests again, then the announced problem occured.
Edit2: In case someone is having trouble with ng e2e, protractor and webdriver (chrome). For Angular 9, the following solved the problem for me: Download the webdriver of chrome from https://chromedriver.chromium.org/downloads
Then copy and paste the downloaded driver to your desired destination (in my case, it’s the root of my angular app where protractor.conf.js is, I created a folder called “chromeDrivers” on the root level) and specify the path to the .exe in the protractor.conf.js file like this (notice the path is relative):
exports.config = { chromeDriver: ‘./chromeDrivers/chromedriver_win32_84.0.4147.30/chromedriver.exe’, //rest of config }
Then, back on the cmd, just run
ng e2e --webdriverUpdate=false
. This will prevent protractor from using webdriver-manager in node_modules and it will use your chromeDriver at the specified path after building your app. If you receive a spawn ENOENT error, you probably didn’t point to the exe but to a folder.Hope it helps someone, although it’s not directly a webdriver-manager issue.
It worked for me. Thanks
@cnishina Thanks for resolving this issue. Verified 12.1.3 is downloading Chrome 74 with proper Selenium Jar file using Protractor 5.4.2