【问题标题】:Session not created exception: Chrome version must be >= x.y.z when using Selenium Webdriver with Chrome会话未创建异常:将 Selenium Webdriver 与 Chrome 一起使用时,Chrome 版本必须 >= x.y.z
【发布时间】:2018-08-25 09:40:23
【问题描述】:

让这件事变得棘手的一些注意事项是,我正在使用 c9.io(在云中开发),所以我使用 gem webdrivers 能够运行 Chrome Watir,而不是为我的设备上安装的 Chrome 创建可执行路径。

我的代码一直在工作,直到我今天登录并收到错误

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

gemfile 的相关部分(其他都是库存)

gem 'webdrivers'

gem 'watir'

我正在尝试编译的代码

def mastersave
    require 'watir'
    @browser = Watir::Browser.new :chrome, headless: true
end

我并没有坚持使用 Chrome 的想法,但它对我有用。 gem 'webdrivers' 也允许我使用 firefox,但我得到错误'permission denied' 。

【问题讨论】:

    标签: ruby-on-rails selenium selenium-webdriver selenium-chromedriver c9.io


    【解决方案1】:

    以下错误Chrome version must be >= 64.0.3282.0,表示它与当前的 chromedriver 2.37 版本不兼容

    将 chrome 更新到最新版本应该可以解决问题。

    请参考https://sites.google.com/a/chromium.org/chromedriver/downloads

    最新版本:ChromeDriver 2.36

    支持 Chrome v63-65

    【讨论】:

    • 这可能是一个愚蠢的问题,但我不确定如何使用最新版本的 Chrome 或在 c9.io 上开发时如何降级我的 Chromedriver 我在网上找到的大部分内容都在谈论仅当 IDE 在您的系统上并且我正在云中开发时,如何做这些事情。如果您有 c9 帐户,如果您想仔细查看,我可以与您共享我的存储库。我将不胜感激。
    • 我不知道c9.io是什么,但正如你所说的它是云,你可以尝试通过机器的远程(RDP)升级浏览器吗?
    【解决方案2】:

    此错误消息...

    会话未创建异常:Chrome 版本必须 >= 64.0.3282.0(驱动程序信息:chromedriver=2.37.543610 (afd36256570660b5a2f0e4dbd1b040f3dcfe9cb5),platform=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

    【讨论】:

    • 这可能是一个愚蠢的问题,但我不确定如何使用最新版本的 Chrome 或在 c9.io 上开发时如何降级我的 Chromedriver 我在网上找到的大多数内容都在谈论仅当 IDE 在您的系统上并且我正在云中开发时,如何做这些事情。如果您有 c9 帐户,如果您想仔细查看,我可以与您共享我的存储库。我将不胜感激。
    • @ChrisWilson 恐怕......我是 c9.io 的新手
    • 没关系!非常感谢您迄今为止的意见。这对我需要走的方向非常有帮助。
    • @UweKeim 我的建议是不要将 blockquotes 引入错误跟踪日志,因为这样做,调试变得困难,因为错误堆栈跟踪得到word Wrapped
    • @UweKeim 所有 QA 都是社区的努力,我们始终欢迎您的贡献。我只是想传达,imo,因为我们知道 Selenium 错误日志格式,如果它们得到 word Wrapped,则调试错误跟踪日志变得困难且耗时。跨度>
    【解决方案3】:

    对于刚从 Chrome 73 升级到 74 时遇到此问题的用户,可能是因为您使用的是 chromedriver-helper。显然chromedriver-helper gem 已被弃用。我改用 webdrivers gem 并解决了这个问题。

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

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

    bundle install

    【讨论】:

      【解决方案4】:

      将 Google Chrome 版本更新到 74 对我有用。

      步骤: 1. 前往帮助 -> 关于 Google Chrome -> Chrome 会自动寻找更新(将 Chrome 更新至最新版本)

      另外,请注意,您应该拥有更新的 chrome 驱动程序。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-12
        • 2017-03-07
        • 2019-08-07
        • 2019-05-26
        相关资源
        最近更新 更多