angular / webdriver-manager

A binary manager for E2E testing
MIT License
224 stars 116 forks source link

"webdriver-manager update" downloads chrome driver version 98.0.4758.80 instead of version 98.0.4758.102 #509

Open s-werking opened 2 years ago

s-werking commented 2 years ago

When the update runs, a chromedriver_98.0.4578.102.zip folder is made but the downloaded chromedriver within that zipped folder is version 98.0.4578.80. See screenshots below for more information about the issue: image

image

image

awbuboltz commented 2 years ago

The reason for this issue is that https://chromedriver.storage.googleapis.com/ has the list of versions sorted alphabetically.

The getSpecificChromeDriverVersion function of chrome_xml.ts does not factor that in, and assumes that whatever semver comes last in the list, must be the highest.

In this case, 98.0.4758.102 is hit first as 102 comes before 80 alphabetically. Once 98.0.4758.80 is hit, (last in the list of the 4758 versions) it is chosen as the highest and is what gets downloaded. The zip gets renamed to 98.0.4758.102 because the code assumes that it was found.

awbuboltz commented 2 years ago

Here's a link to the fix I put in my fork: https://github.com/awbuboltz/webdriver-manager/commit/4870239b4c0a265e836f77d7264a5ede3cdd191c