最新的chromedriver版本为85。(根据https://chromedriver.storage.googleapis.com) 但最新的chrome版本是84。
在我的测试应用程序中,chrome和chromedriver一起自动更新,但是由于最新的chrome驱动程序和最新的chrome版本不再兼容,因此现在会导致错误。
现在我的问题是: 这是正常行为吗? 我应该一直期待最新的chromedriver和chrome版本兼容吗?
答案 0 :(得分:0)
是的,这很正常。
chrome驱动程序版本83将与chrome 83 ..一起工作。 因此,在这里要使用最新的84.x版本而不是最新版本。
请参阅https://chromedriver.chromium.org/downloads
Chrome的最新版本是85(但是现在可能暂时不可用),并且chrome驱动程序已发布以支持chrome 85。
答案 1 :(得分:0)
如果您使用量角器,因此webdriver-manager,这是不正常的。
webdriver-manager应该安装兼容的稳定版ChromeDriver,但是现在似乎有问题,有人跳了出来,将85列为稳定版。
您可以在issue 376 from webdriver-manager的线程中查看更多内容
以下是对我有用的解决方法: 这是复制的解决方法:
我们已将webdriver-manager安装为项目依赖项(npm install --save-dev webdriver-manager
)
我们在运行测试之前先致电webdriver-manager update --versions.chrome 84.0.4147.30
。这将在./node_modules/webdriver-manager/selenium/中安装84 chromedriver版本。 (我们只是在package.json中将其作为npm脚本制作了)
然后,我们更新protractor.conf文件,以在exports.config的根目录中包含以下行:chromeDriver:"./node_modules/webdriver-manager/selenium/chromedriver_84.0.4147.30.exe"
**
量角器仍安装chromedriverr 85,但它将使用84版本。
**在本例中,我们在docker中运行量角器测试,但主要在Windows上进行开发。因此,我更新了protractor.conf以使其具有以下一行,使其可以在以下任一目录中使用:
chromeDriver: process.platform === "win32" ? "./node_modules/webdriver-manager/selenium/chromedriver_84.0.4147.30.exe" : "./node_modules/webdriver-manager/selenium/chromedriver_84.0.4147.30"
答案 2 :(得分:0)
如果您使用的是Selenium驱动的ChromeDriver,则需要跟踪页面ChromeDriver - WebDriver for Chrome。
但是,您仍然会发现两(2)种口味:
当前稳定版本经过了良好的测试,并在公开发布之前通过了 alpha 和 beta 测试,可以安全地用于生产环境。
当前Beta版仍处于 beta 测试中,并且专门针对Chrome Canary,面向开发人员的夜间构建以及在任何情况下都不应该在生产环境中使用。