Chromedriver版本114在macOS更新到ventura(ruby/rails)后尝试使用当前的chrome浏览器(118)

qvk1mo1f  于 11个月前  发布在  Go
关注(0)|答案(1)|浏览(146)

我最近更新了我的操作系统到ventura(就在它变成索诺马之前),从那时起,我就不能对任何使用Capybara的规范使用rspec了,因为下面的错误:

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浏览器版本,selenium-webdriverwebdrivers gems应该为我处理这个问题,并且不需要任何配置。
我确实尝试在这里下载我的特定版本的Chrome,但这不起作用,我认为这可能是 selenium 4.11+正在使用的114+选项,而不是<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)仍然在寻找新版本的旧位置。

wh6knrhe

wh6knrhe1#

尝试Selenium 4.9.1并将您的Chromedriver更新到119.0.0
这是我更新后的工作。

相关问题