未创建会话异常:将Selenium Webdriver与Chrome搭配使用时,Chrome版本必须> = xyz

Chr*_*son 8 selenium ruby-on-rails selenium-chromedriver selenium-webdriver c9.io

一些使我感到棘手的注意事项是,我正在使用c9.io(在云中开发),因此我使用gem webdrivers可以通过Watir运行Chrome,而不是为安装在设备上的Chrome创建可执行路径。

我的代码一直有效,直到我今天登录并出现错误

会话未创建异常:Chrome版本必须> = 64.0.3282.0(驱动程序信息:chromedriver = 2.37.543610(afd36256570660b5a2f0e4dbd1b040f3dcfe9cb5),平台= Linux 4.9.80-c9 x86_64)

gemfile的相关部分(其他所有库存)

gem 'webdrivers'

gem 'watir'
Run Code Online (Sandbox Code Playgroud)

我正在尝试编译的代码

def mastersave
    require 'watir'
    @browser = Watir::Browser.new :chrome, headless: true
end
Run Code Online (Sandbox Code Playgroud)

我并没有坚持使用Chrome的想法,但这正是对我有用的。宝石“ webdrivers”还允许我使用Firefox,但是我收到了“权限被拒绝”的错误。

nat*_*4ws 7

对于那些刚从Chrome 73到74出现此问题的用户,可能是因为您正在使用chromedriver-helper。显然该chromedriver-helper宝石已被弃用。我改用了webdriversgem,它解决了这个问题。

在Gemfile中替换: gem 'chromedriver-helper'

带有: gem 'webdrivers', '~> 3.0'

bundle install


Deb*_*anB 6

这个错误讯息...

会话未创建异常:Chrome版本必须> = 64.0.3282.0(驱动程序信息:chromedriver = 2.37.543610(afd36256570660b5a2f0e4dbd1b040f3dcfe9cb5),平台= Linux 4.9.80-c9 x86_64)

…暗示Chrome版本必须> = 64.0

您的主要问题是所使用的二进制文件之间的版本兼容性,如下所示:

  • 您使用的是chromedriver = 2.37,它仍然不是GA,因此我们不确定相关性,但是从错误消息中可以明显看出,它不支持Chrome v64.x

  • 为了更安全,您可以:
    • 降级为chromedriver = 2.36发行说明中提到支持Chrome v63-65)
    • 或升级至chrome = 65.x
  • 清理你的项目工作,通过你的IDE重建仅需要依赖你的项目。
  • 在执行测试套件之前和之后,使用CCleaner工具清除所有操作系统琐事。
  • 如果您的基本Chrome版本太旧,请通过Revo Uninstaller卸载它,然后安装最新的GA和发行的Chrome版本。
  • 执行您的@Test