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?
I found, that chrome and chromedriver versions support policy has changed recently.
As stated on downloads page:
- If you are using Chrome version 77, please download ChromeDriver 77.0.3865.10
- If you are using Chrome version 76, please download ChromeDriver 76.0.3809.68
- If you are using Chrome version 75, please download ChromeDriver 75.0.3770.140
- If you are using Chrome version 74, please download ChromeDriver 74.0.3729.6
- If you are using Chrome version 73, please download ChromeDriver 73.0.3683.68
- For older version of Chrome, please 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.
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+
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.
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.
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
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.
来源:https://stackoverflow.com/questions/41133391/which-chromedriver-version-is-compatible-with-which-chrome-browser-version