Added ability to automatically download browsers and/or webdrivers for these browsers.
Supported browsers to download:
chrome > 73
firefox
Supported drivers to download:
chromedriver (for chrome)
geckodriver (for firefox)
edgedriver (for edge)
With "--local" (or gridUrl: "local") and webdriver protocol, webdiver instances are automatically run for these browsers:
chrome (>73)
firefox
edge (if the browser itself is installed. Driver will be installed automatically)
safari (mac only)
When launching tests with "--local" (and optionally webdriver protocol) all supported browsers/drivers will be installed automatically, if necessary. With "--local" we at all cost are trying to avoid network requests to google/mozilla/... servers.
Example
Set up a testplane config, using webdriver protocol and describe some chrome/firefox browsers with defined versions
Launch eigher using npx testplane --local, either by setting "gridUrl": "local"
In order to just download browser, npx testplane install-browsers could be used. This way we also check if our browsers are up-to-date, so if we have 114.0.5696.0 downloaded and user wants chrome@114.0, we check for newest chrome@114.0 version and see it is "114.0.5735.133". Then this new version is downloaded
If used without arguments, all of the config browsers will be installed
If argument is browserId from config, the corresponding browser will be installed
If argument is browserName>@<browserVersion, it will be installed.
These can be combined: npx testplane install-browsers my-chrome chrome@115
Directory to save testplane browsers and drivers can be set with TESTPLANE_BROWSERS_PATH env variable. By default, ~/.testplane is used.
What is done
Added ability to automatically download browsers and/or webdrivers for these browsers.
Supported browsers to download:
Supported drivers to download:
With "--local" (or gridUrl: "local") and webdriver protocol, webdiver instances are automatically run for these browsers:
When launching tests with "--local" (and optionally webdriver protocol) all supported browsers/drivers will be installed automatically, if necessary. With "--local" we at all cost are trying to avoid network requests to google/mozilla/... servers.
Example
npx testplane --local
, either by setting "gridUrl": "local"In order to just download browser,
npx testplane install-browsers
could be used. This way we also check if our browsers are up-to-date, so if we have 114.0.5696.0 downloaded and user wants chrome@114.0, we check for newest chrome@114.0 version and see it is "114.0.5735.133". Then this new version is downloadednpx testplane install-browsers my-chrome chrome@115
Directory to save testplane browsers and drivers can be set with
TESTPLANE_BROWSERS_PATH
env variable. By default,~/.testplane
is used.