Forcefully update or omit webdriver updates
Description
Currently Nexial automatically downloads and installs the latest webdriver in accordance to the target browser specified for an execution. This might result in a slight delay during the initial execution when the corresponding webdriver is not yet installed. However the overall benefits are a smaller Nexial distribution to download (or to update), a smaller footprint on the test harness (the compute resource where the execution is conducted), and a simpler way to manage webdriver updates. Webdriver development are maintained by separate third-party teams, often open-source teams. As such, one needs to stay up-to-date with their development progress in order to obtain the appropriate webdriver suitable for one’s automation needs. Nexial simplifies this via periodic, automatic webdriver updates.
As of now, below is the webdriver update schedule in Nexial:
Webdriver Update Schedule
| Browser | WebDriver | Update Frequency | Update From |
|---|---|---|---|
| Firefox | geckodriver |
after browser update or Bi-weekly | https://github.com/mozilla/geckodriver/releases |
| Chrome | chromedriver |
after browser update or Bi-weekly | https://chromedriver.chromium.org/downloads |
| Electron | a fork of chromedriver |
Bi-weekly | https://github.com/electron/electron/releases |
| Internet Explorer | IEDriverServer |
Bi-weekly | http://selenium-release.storage.googleapis.com/index.html |
| Microsoft Edge | MicrosoftWebDriver |
None; pre-installed as part of Windows 10 | |
| BrowserStack | BrowserStackLocal |
Monthly | https://www.browserstack.com/local-testing/automate |
| CrossBrowserTesting | cbt_tunnels |
Monthly | https://github.com/crossbrowsertesting/cbt-tunnel-nodejs/releases |
How does Nexial update the webdriver
As part of the webdriver installation, Nexial creates a .manifest file in the same directory of the webdriver. This
.manifest file contains the “last check timestamp” such that Nexial can use it to determine the next “check for
update”. During execution, if Nexial determines that the corresponding webdriver is due for a “check for update”, it
will automate the checking process (against the appropriate webdriver website). If a newer webdriver is found, the
download and installation process will occur immediately. Subsequently the “last check timestamp” will be updated to
the corresponding .manifest file. Webdrivers are installed to the $HOME/.nexial/{webdriver} directory. Below is an
example of such directory, along with the .manifest file:

The checking and update process are largely transparent to Nexial user, albeit a slight delay during installation process. However the benefits, as stated above, easily outweigh the infrequent and small delays.
NOTE for Chrome & Firefox browser
- Old version browser : If you have updated the browser to old version, Nexial will auto download the compatible web driver when you will execute the script. For example, if you are using firefox version 56 or chrome version 78 then system will download the compatible driver for this version.
- Stop auto update : To stop the Nexial auto update you can set the flag
neverCheck = truein$HOME/.nexial/{webdriver}/.manifestfile. - Beta version browser : If you are using beta version browser you can set the flag
neverCheck = trueand manually download and place the driver at$HOME/.nexial/{webdriver}directory. For example, you can download and install theGoogle Chrome Betaversion browser and set the driver manually for this.
But…
There are two possible issues that might arise:
- The target browser has been updated on your test harness between 2 consecutive “check for update”
intervals (e.g. browser is updated a few days after the last check).
- In this case, one can force Nexial to install the latest webdriver. See Forcefully update webdriver section below for details.
- The target browser is older than the corresponding webdriver - perhaps one might have good reason to retain an older
version of the browser.
- In such case, one can manually download the appropriate webdriver (if need be) and reconfigure the
corresponding
.manifestfile to omit any webdriver checks (and hence no updates). See Forcefully omit webdriver update section below for details.
- In such case, one can manually download the appropriate webdriver (if need be) and reconfigure the
corresponding
Forcefully update webdriver
-
Open Windows Explorer and go to
C:\Users\%USER_ID%\.nexialdirectory. %USER_ID% refers to your user ID.
Or simply, open theRundialog viaWINDOWS+r, type.nexialand then click theOKbutton.
-
Then, find the sub-directory under
C:\Users\%USER_ID%\.nexialthat corresponds to the webdriver to be updated. Simply delete that directory.
For example, ifchromedriverneeds to be updated, simple delete thechromefolder.
- Nexial will install the latest webdriver as part of the next execution.
Forcefully omit webdriver update
-
Open Windows Explorer and go to
C:\Users\%USER_ID%\.nexialdirectory. %USER_ID% refers to your user ID.
Or simply, open theRundialog viaWINDOWS+r, type.nexialand then click theOKbutton.
-
Open the corresponding sub-directory for the webdriver in question.
For example, if user wants to omit update forchromedriveropen thechromedirectory.
-
Open the
.manifestfile with a text editor.
-
Set
"neverCheck"totrueand save the file
- You might need to download the appropriate webdriver and place it this sub-directory. Use the Webdriver Update Schedule above to download the appropriate webdriver, which should be unzipped/copied to the same sub-directory. In other words it should override existing webdriver file.
- Start your execution on Nexial.

