47

Actually I'm a bit confused. Although I read several resources about this.

For having a test of Selenium 3 using ChromeBrowser we need an extra app called ChromeDriver.

I found this text from GitHub:

ChromeDriver is only compatible with Chrome version 12.0.712.0 or newer. If you need to test an older version of Chrome, use Selenium RC and a Selenium-backed WebDriver instance.

My question is are all ChromeDriver versions compatible with all Chrome version? No conflict between each version?

Where can I find documentation of all versions matching between the ChromeDriver & ChromeBrowser?

8 Answers 8

78

After 2.46, the ChromeDriver major version matches Chrome

chromedriver    chrome
76.0.3809.68    76
75.0.3770.140   75
74.0.3729.6     74
73.0.3683.68    73

It seems compatibility is only guaranteed within that revision.

If you need to run chromedriver across multiple versions of chrome for some reason, well, plug the latest version number of chrome you're using into the Chromedriver version selection guide, then hope for the best. Actual compatibility will depend on the exact versions involved and what features you're using.

Older version compatibility matrix

Here is a chart of the compatibility between chromedriver and chrome. This information can be found at the Chromedriver downloads page.

chromedriver    chrome
2.46            71-73
2.45            70-72
2.44            69-71
2.43            69-71
2.42            68-70
2.41            67-69
2.40            66-68
2.39            66-68
2.38            65-67
2.37            64-66
2.36            63-65
2.35            62-64
2.34            61-63
2.33            60-62
---------------------
2.28            57+
2.25            54+
2.24            53+
2.22            51+
2.19            44+
2.15            42+

All versions are not cross-compatible.

For example, we had a bug today where chromedriver 2.33 was trying to run this on Chrome 65:

((ChromeDriver) driver).findElement(By.id("firstName")).sendKeys("hello")

Due to the navigation changes in Chrome 63, updated in Chromedriver 2.34, we got back

unknown error: call function result missing 'value'

Updating to Chromedriver 2.37 fixed the issue.

1
  • Perfect. For example, if using node and Chrome 96.x, then npm install chromedriver@96
    – ow3n
    Commented Jan 8, 2022 at 17:39
63

I found, that chrome and chromedriver versions support policy has changed recently.

As stated on downloads page:

If you are using Chrome version please download chromedriver
Starting from v115 The latest Chrome + ChromeDriver releases per release channel (Stable, Beta, Dev, Canary) are available at the Chrome for Testing availability dashboard. For automated version downloading one can use the convenient JSON endpoints.

Note also that latest versions of Selenium has built-in Selenium Manager which will download specified version of Chrome and ChromeDriver automatically when you specify browserName and browserVersion properties in options.
Chrome v114 ChromeDriver 114.0.5735.90
Chrome v113 ChromeDriver 113.0.5672.63
Chrome v112 ChromeDriver 112.0.5615.49
Chrome v111 ChromeDriver 111.0.5563.64
Chrome v110 ChromeDriver 110.0.5481.77
Chrome v109 ChromeDriver 109.0.5414.74
Chrome v108 ChromeDriver 108.0.5359.71
Chrome v107 ChromeDriver 107.0.5304.18
Chrome v106 ChromeDriver 106.0.5249.62
Chrome v105 ChromeDriver 105.0.5195.52
Chrome v104 ChromeDriver 104.0.5112.79
Chrome v103 ChromeDriver 103.0.5060.134
Chrome v102 ChromeDriver 102.0.5005.61
Chrome v101 ChromeDriver 101.0.4951.41
Chrome v100 ChromeDriver 100.0.4896.60
Chrome v99 ChromeDriver 99.0.4844.51
Chrome v98 ChromeDriver 98.0.4758.102
Chrome v97 ChromeDriver 97.0.4692.71
Chrome v96 ChromeDriver 96.0.4664.45
Chrome v95 ChromeDriver 95.0.4638.69
Chrome v94 ChromeDriver 94.0.4606.113
Chrome v93 ChromeDriver 93.0.4577.63
Chrome v92 ChromeDriver 92.0.4515.107
Chrome v91 ChromeDriver 91.0.4472.101
Chrome v90 ChromeDriver 90.0.4430.24
Chrome v89 ChromeDriver 89.0.4389.23
Chrome v88 ChromeDriver 88.0.4324.96
Chrome v87 ChromeDriver 87.0.4280.88
Chrome v86 ChromeDriver 86.0.4240.22
Chrome v85 ChromeDriver 85.0.4183.87
Chrome v84 ChromeDriver 84.0.4147.30
Chrome v83 ChromeDriver 83.0.4103.39
Chrome v81 ChromeDriver 81.0.4044.69
Chrome v80 ChromeDriver 80.0.3987.106
Chrome v79 ChromeDriver 79.0.3945.36
Chrome v78 ChromeDriver 78.0.3904.105
Chrome v77 ChromeDriver 77.0.3865.40
Chrome v76 ChromeDriver 76.0.3809.126
Chrome v75 ChromeDriver 75.0.3770.140
Chrome v74 ChromeDriver 74.0.3729.6
Chrome v73 ChromeDriver 73.0.3683.68
older version of Chrome see Barett's anwer

There is general guide to select version of crhomedriver for specific chrome version: https://sites.google.com/a/chromium.org/chromedriver/downloads/version-selection

Here is excerpt:

  • First, find out which version of Chrome you are using. Let's say you have Chrome 72.0.3626.81.
  • Take the Chrome version number, remove the last part, and append the result to URL "https://chromedriver.storage.googleapis.com/LATEST_RELEASE_". For example, with Chrome version 72.0.3626.81, you'd get a URL "https://chromedriver.storage.googleapis.com/LATEST_RELEASE_72.0.3626".
  • Use the URL created in the last step to retrieve a small file containing the version of ChromeDriver to use. For example, the above URL will get your a file containing "72.0.3626.69". (The actual number may change in the future, of course.)
  • Use the version number retrieved from the previous step to construct the URL to download ChromeDriver. With version 72.0.3626.69, the URL would be "https://chromedriver.storage.googleapis.com/index.html?path=72.0.3626.69/".
  • After the initial download, it is recommended that you occasionally go through the above process again to see if there are any bug fix releases.

Note, that this version selection algorithm can be easily automated. For example, simple powershell script in another answer has automated chromedriver updating on windows platform.

Note also that latest versions of Selenium has built-in Selenium Manager which will download specified version of Chrome and ChromeDriver automatically when you specify browserName and browserVersion properties in options.

3
  • great... you just came up with an idea of automating the updating things... alright then.
    – gumuruh
    Commented Jul 13, 2019 at 13:21
  • Please note that the chrome driver 85 updated to Version 85.0.4183.83 since Version 85.0.4183.38 not detecting change to the installation directory. 83 was out earlier today. Cheers!
    – A Hassan
    Commented Aug 26, 2020 at 8:11
  • I download the latest version (as per the table). In this case Chrome v96 and re-run the code pointing to the correct PATH with driver = webdriver.Chrome(PATH), but still get the same error message... what else is there to do ? Commented Dec 22, 2021 at 14:20
8

For starters, all ChromeDriver versions are not compatible with all versions of Chrome.
Sometimes I wake up, run my script, if it breaks, I update the driver. Then it works. Chrome has quietly updated itself without telling me.

For a starting point of finding which chromedrivers go with which chrome versions this link brings you to the current release notes. You can look at previous release notes for earlier versions.

https://chromedriver.storage.googleapis.com/2.26/notes.txt

----------ChromeDriver v2.26 (2016-12-09)----------

Supports Chrome v53-55

This page will show you the current release https://sites.google.com/a/chromium.org/chromedriver/downloads

2
  • seems that we need to un-check the auto-update of that chrome browser. right? @ProgrammersBlock
    – gumuruh
    Commented Dec 14, 2016 at 4:04
  • 2
    That depends. Usually updates to me mean security changes so I would not want to miss any of those. I think what it really calls for is a script that automatically checks for new ChromeDrivers and notifies me ahead of time. :) Commented Dec 14, 2016 at 11:54
2

The Chrome Browser versión should matches with the chromeDriver versión. Go to : chrome://settings/help

How do I confirm I'm using the right chromedriver?

  • Go to the folder where you have chromeDriver
  • Open command prompt pointing the folder
  • run: chromeDriver -v
1

In case of mine, I solved it just by npm install protractor@latest -g and npm install webdriver-manager@latest. I am using chrome 80.x version. It worked for me in both Angular 4 & 6

0

At the time of writing this I have discovered that chromedriver 2.46 or 2.36 works well with Chrome 75.0.3770.100

Documentation here: http://chromedriver.chromium.org/downloads states align driver and browser alike but I found I had issues even with the most up-to-date driver when using Chrome 75

I am running Selenium 2 on Windows 10 Machine.

0

This is a helpful website listing the mapping for the latest releases of Chrome -

https://www.uitests-chromedrivermapping.com

-1

You can get the chromeDriver versions here-

https://googlechromelabs.github.io/chrome-for-testing/#stable

Not the answer you're looking for? Browse other questions tagged or ask your own question.