Capybara undefined方法`期待'为Capybara:模块

时间:2014-11-11 19:08:39

标签: ruby-on-rails ruby selenium cucumber capybara

我正在使用/ruby-1.9.3-p545/gems/capybara-2.4.4和/ruby-1.9.3-p545/gems/selenium-webdriver-2.44.0。

我的Capybara配置:

      config.default_driver = :selenium
      config.run_server = false
      config.default_selector = :css
      config.default_wait_time = 60

我可以向您保证以下方法正常工作

     Capybara.visit
     find(:css, "#checkbox-selectall").set(true)

唯一不起作用的是' expect'

     expect(page).to have_css('.screen-reader-text') 

或          Capybara.expect(页).to have_css(' .screen-reader-text')

我收到以下错误

     undefined method `expect' for Capybara:Module (NoMethodError)

我可以在文档中清楚地看到这个版本的capybara确实支持expect方法,但是我无法理解为什么它说NoMethodError好像我没有从正确的范围或其他东西调用它。

Capybara文件:http://www.rubydoc.info/gems/capybara/Capybara

1 个答案:

答案 0 :(得分:5)

安装RSpec - 将它放在宝石文件中,旁边是Capybara

gem 'rspec'

运行bundle install

生成安装 rails generate rspec:install,更多信息https://github.com/rspec/rspec-rails

请务必在新助手文件(spec_helper或rails_helper)中加入水豚和水豚设置。