Description
Add more chromedriver version-selection options
Eg.
sbase get chromedriver stable
sbase get chromedriver latest
sbase get chromedriver previous
sbase get chromedriver latest-1
sbase get chromedriver beta
sbase get chromedriver dev
sbase get chromedriver canary
Example of output: (If run today, where the latest beta
is 117.0.5938.22
)
> sbase get chromedriver beta
*** chromedriver to download = 117.0.5938.22 (Latest Beta)
Downloading chromedriver-mac-arm64.zip from:
https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/117.0.5938.22/mac-arm64/chromedriver-mac-arm64.zip ...
Download Complete!
Extracting ['chromedriver'] from chromedriver-mac-arm64.zip ...
Unzip Complete!
The file [chromedriver] was saved to:
/Users/michael/github/SeleniumBase/seleniumbase/drivers/chromedriver
Making [chromedriver 117.0.5938.22] executable ...
[chromedriver 117.0.5938.22] is now ready for use!
Those options can also be used directly with tests: (Default browser is chrome
)
pytest --driver-version=stable
pytest --driver-version=latest
pytest --driver-version=previous
pytest --driver-version=latest-1
pytest --driver-version=beta
pytest --driver-version=dev
pytest --driver-version=canary
Additionally, there is also --driver-version=mlatest
for tests, which first detects the major version of the browser, and then makes sure that the latest driver for that milestone is installed. Otherwise, if the major browser version matches the major driver version (eg. 117.*
and 117.*
), then no new driver is downloaded, even if the driver version is not the latest version for that milestone.
pytest --driver-version=mlatest
Also note that using these options will guarantee a call to https://googlechromelabs.github.io/chrome-for-testing/latest-versions-per-milestone.json during tests. If you need to run tests offline, don't use these options, and make sure that the major driver version already matches the major browser version.