其实我有点困惑。虽然我读了several resources这个。
要使用 ChromeBrowser 测试 Selenium 3 ,我们需要一个名为 ChromeDriver 的额外应用。
我发现了这个文字from GitHub:
ChromeDriver仅与Chrome版本12.0.712.0兼容 新。如果您需要测试较旧版本的Chrome,请使用Selenium RC 和Selenium支持的WebDriver实例。
我的问题是所有ChromeDriver版本都与所有Chrome版本兼容吗?每个版本之间没有冲突吗?
在哪里可以找到ChromeDriver&amp ;;之间匹配的所有版本的文档。 ChromeBrowser?
答案 0 :(得分:33)
这是chromedriver和chrome之间兼容性的图表。 此信息可在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+
例如,我们今天有一个错误,chromedriver 2.33试图在Chrome 65上运行它:
((ChromeDriver) driver).findElement(By.id("firstName")).sendKeys("hello")
由于Chrome 63中的导航更改,在Chromedriver 2.34中更新,我们回来了
未知错误:呼叫功能结果缺失'值'
更新到Chromedriver 2.37解决了这个问题。
答案 1 :(得分:7)
首先,所有ChromeDriver版本都与Chrome的所有版本都不兼容 有时我醒来,运行我的脚本,如果它坏了,我更新驱动程序。然后它工作。 Chrome在没有告诉我的情况下悄然更新了自己。
从一个起点找出哪个chromedrivers与哪个chrome版本一起使用 此链接将带您进入当前的发行说明。您可以查看早期版本的先前发行说明。
https://chromedriver.storage.googleapis.com/2.26/notes.txt
---------- ChromeDriver v2.26(2016-12-09)----------
支持Chrome v53-55
此页面将显示当前版本 https://sites.google.com/a/chromium.org/chromedriver/downloads
答案 2 :(得分:6)
我发现chrome和chromedriver版本支持政策最近已更改。
如downloads page所述:
有用于选择特定Chrome版本的crhomedriver版本的一般指南:https://sites.google.com/a/chromium.org/chromedriver/downloads/version-selection
这里摘录:
请注意,该算法可以轻松实现自动化。例如,simple powershell script in another answer在Windows平台上自动进行了chromedriver更新。
答案 3 :(得分:1)
在我的情况下,我仅通过npm install protractor@latest -g
和npm install webdriver-manager@latest
解决了它。我正在使用chrome 80.x版本。它在Angular 4和Angular 6中都对我有用
答案 4 :(得分:1)
Chrome浏览器版本应与chromeDriver版本匹配。 转到:chrome:// settings / help
如何确认我使用的是正确的chromedriver?
答案 5 :(得分:0)
在撰写本文时,我发现chromedriver 2.46或2.36在Chrome 75.0.3770.100上可以很好地工作
此处的文档:http://chromedriver.chromium.org/downloads指出驱动程序和浏览器的对齐方式相同,但我发现使用Chrome 75时即使使用最新的驱动程序也存在问题
我正在Windows 10计算机上运行Selenium 2。
答案 6 :(得分:0)
这是一个有用的网站,列出了最新版本的Chrome的映射-