When using Protractor 5.4.2, webdriver-manager downloads 2.46 which is not compatible with Chrome 74

大憨熊 提交于 2019-11-29 15:29:07

webdriver-manager@12.1.4 is fixed

webdriver-manager released 12.1.4 which will download a max ChromeDriver version of 74. How to get it?

  • do a fresh install of your node modules directory (remove node_modules folder and do a npm install)
  • do a forced install npm install -f

If you want to download a version specific in 74.x.x.x, this has been fixed in 12.1.4. I introduced a bug when I tried to quickly fix the issue in 12.1.3 causing this to not work.

Background on webdriver-manager downloading ChromeDriver 2.xx

webdriver-manager downloaded files based on the https://chromedriver.storage.googleapis.com/ The versions from the download were formatted 2.xx. These did not map to versions of Chrome. To make semantic version comparisons, we would tack on a '.0' to user the semver node module to make comparisons.

This assumption does not work with the new versioning for ChromeDriver 74 (74.0.3729.6). This is why it was not downloading the file. This change happened in approx August 2018. When this change happened fixes were added to the upcoming version of webdriver-manager 13.

So why not use webdriver-manager@13? Some reasons why this won't work with Protractor 5.4.2:

  • The fix was in for webdriver-manager 13 but Protractor 5.4.2 relies on webdriver-manager ^12.0.6. Installing another version of webdriver-manager might not work when resolving the downloaded files.
  • This would not work when launching Protractor with direct connect (driverProviders/direct) or local since the update-config.json file is not created. There is a fix for this here: https://github.com/angular/webdriver-manager/pull/372 but probably will not be merged.

How does webdriver-manager@12 download a max version of 74?

For webdriver-manager@12, the max version is stored here: https://github.com/angular/webdriver-manager/blob/legacy/config.json#L5 If a Chrome releases 75, this should also be changed to version 75 in a pull request against the legacy branch.

Try installing chromedriver v. 74.0.3729.6 (Chrome 74) LOCALLY AND GLOBALLY

for the global installation run

webdriver-manager update --versions.chrome 74.0.3729.6

for local installation run something like

node ./node_modules/protractor/bin/webdriver-manager update --versions.chrome 74.0.3729.6

List of driver versions is here http://chromedriver.chromium.org/downloads

Possibly you'll face this issue update protractor chrome driver to 74, see my comment there

Let me know if you run into issues

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!