我正在使用/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好像我没有从正确的范围或其他东西调用它。
答案 0 :(得分:5)
安装RSpec - 将它放在宝石文件中,旁边是Capybara
gem 'rspec'
运行bundle install
生成安装
rails generate rspec:install
,更多信息https://github.com/rspec/rspec-rails
请务必在新助手文件(spec_helper或rails_helper)中加入水豚和水豚设置。