javaselenium-webdriverselenium-chromedriverwebdrivermanager-java

webdrivermanager compatibility with TravisCI build server


We are using TravisCI for all our builds which includes integration tests that are running against a browser. So, in our travis.yml file we include

addons:
  chrome: stable

to make sure that before the build starts, chrome browser will be installed in the build server instance.

Up to now we were included the chromedriver binary file in our repository but it is tedious work that we have to update when there is a new version released to chrome.

I guess webdrivermanager is intended to this purpose but I want to know how webdrivermanager make releases. 🤔

This is to ensure that anytime if there is a new version released for chrome, webdrivermanager will provide the latest driver version automatically. So we can be safe that any chrome version that will be installed in our TravisCI build server, webdrivermanager can provide appropriate driver without failing our integration tests.

Otherwise it is safe to maintain the driver manually than to depend on an external library which I have freedom to update it instantly.


Solution

  • WebDriverManager provides dynamic browser version detection. It means that, for a browser like Chrome, which is evergreen and therefore is automatically updated, WebDriverManager checks periodically its version to determine what is the proper version of chromedriver.

    In short, you don't need to worry anymore about the chromedriver versioning, since WebDriverManager will do that work for you.