【问题标题】:Uninitialized constant Capybara::Webkit::Configuration未初始化的常量 Capybara::Webkit::Configuration
【发布时间】:2018-07-16 05:01:20
【问题描述】:

由于将 puffing-billy 添加到我的 capybara-webkit 功能,我遇到了问题。 我按照说明进行操作:

rails_helper.rb:

require 'billy/capybara/rspec'

水豚.rb:

Capybara.javascript_driver = :webkit_billy
#and other staff bellow

由于我有运行功能:

NameError:
            uninitialized constant Capybara::Webkit::Configuration
          # /Users/ir/.rvm/gems/ruby-2.5.0@guestready/gems/puffing-billy-0.11.1/lib/billy/browsers/capybara.rb:43:in `block in register_webkit_driver'
          # /Users/ir/.rvm/gems/ruby-2.5.0@guestready/gems/capybara-2.17.0/lib/capybara/session.rb:101:in `driver'

我错过了什么?

【问题讨论】:

    标签: rspec capybara-webkit


    【解决方案1】:

    这很可能是因为您使用的是非常旧的 capybara-webkit 版本。如果您不需要最新的 Capybara,请将 Gemfile 中 capybara-webkit 的版本锁定为 ~>1.14(最新版本) 如果您确实需要最新的 Capybara,则必须告诉您的 Gemfile 使用 capybara 的 master 分支-网络套件。

    【讨论】:

    • 是的,在我的 gemfile 中它只是 gem 'capybara-webkit' 没有版本。在bundle update capybara-webkit 之后的事件仍然使用旧的1.1.0。为了解决这个问题,我手动设置了版本gem 'capybara-webkit', '~> 1.14.0',并且只有在加载了新版本之后。
    • @IvanRostovsky 之所以选择旧版本,是因为 bundler 决定使用不兼容 capybara-webkit 1.14.0 的最新版本的 Capybara。因此,bundler 回到版本中找到了 capybara-webkit 的版本,该版本被标记为与 Capybara 的最新版本兼容——恰好是 1.1.0。这是由于从那时起在 capybara-webkit gem 上非常保守的兼容性规范造成的。 capybara-webkit的master分支可能更适合你使用-gem 'capybara-webkit', github: 'thoughbot/capybara-webkit'
    • @IvanRostovsky capybara-webkit 1.15.0 刚刚发布,它支持最新的 Capybara,应该可以解决所有这些问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-14
    • 1970-01-01
    • 2016-03-27
    • 1970-01-01
    • 2013-08-21
    • 1970-01-01
    • 2014-07-07
    相关资源
    最近更新 更多