提问人:Frank 提问时间:10/28/2023 最后编辑:Frank 更新时间:11/2/2023 访问量:892
Chromedriver 版本 114 在 macOS 更新到 ventura (ruby/rails) 后尝试使用当前的 chrome 浏览器 (118)
Chromedriver version 114 trying to use current chrome browser (118) after macOS update to ventura (ruby/rails)
问:
我最近将我的操作系统更新为 ventura(就在它更改为 sonoma 之前),从那时起,由于以下错误,我无法将 rspec 用于任何使用 Capybara 的规范:
Selenium::WebDriver::Error::SessionNotCreatedError:
session not created: This version of ChromeDriver only supports Chrome version 114
Current browser version is 118.0.5993.117 with binary path /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
在更新之前,这从来都不是问题。我们的应用程序正在使用 Rails 6.0.6.1 和 ruby 2.6.6p146
我正在努力获得 ruby/rails 升级,但与此同时我无法使用 selenium-webdriver 4.11+ gem,我们目前停留在 3.142.7,因此我们被困在 114.0.5735.90 的最大 chromedriver 版本
我已经对此进行了广泛的研究,我的 chromedriver 已正确安装和配置,问题是它正在尝试使用我安装的 chrome 版本,目前是 118.0.5993.117 而不是相应的 114 版本应该和以前做过。
我知道解决方案是升级 rails/ruby/gems,相信我,我正在努力,但由于这是一个定制的问题,我无法在任何地方找到解决方案,我找到的一切都是几年前的,并且与 chromedriver 版本有关从 114+ 开始的变化,但在那之后,selenium 4.11 为大多数人否定了这个问题。
我已经尝试了我能想到的一切,我知道您无法回滚您的 chrome 版本,并且我彻底确认 chromedriver 工作正常(以及应用程序中的所有内容,它已经工作了多年)。我无法找到任何方法来指定它应该使用的 chrome 浏览器版本,gems 应该为我处理这个问题,并且不需要任何配置。selenium-webdriver
webdrivers
我确实尝试在这里下载我的特定版本的 chrome,但这不起作用,我认为这可能是 selenium 114+ 正在使用的 4.11+ 选项,不适用于 <115
编辑:我尝试通过brew更新我的chromedriver版本,但收到以下错误消息:
Webdrivers::VersionError:
Unable to find latest point release version for 118.0.5993. You appear to be using a non-production version of Chrome. Please set `Webdrivers::Chromedriver.required_version = <desired driver version>` to a known chromedriver version: https://chromedriver.storage.googleapis.com/index.html
据我所知,这是 selenium 4.11 之前和之后的全部区别,前者查看该索引以找到正确的版本(并且不会找到大于 114 的任何版本),后者获得当前版本。如果有一种方法可以告诉下面 selenium 4.11 在上面使用 chromedriver 114 请告诉我,当我手动设置所需的版本时,我得到:
Webdrivers::NetworkError:
Net::HTTPServerException: 404 "Not Found" with https://chromedriver.storage.googleapis.com/118.0.5993.70/chromedriver_mac64.zip
换句话说,它(WebDrivers Gem)仍在查看新版本的旧位置。
答:
试用 selenium 4.9.1 并将 chromedriver 更新到 119.0.0
更新后这对我有用。
评论