(wat-aro)

生きてます

NoMethodError: undefined method `visit'

Ruby on Rails 4.2.1でRspec + Capybaraでタイトルのエラーが出た時の対策。 Ruby on Rails Tutorialではspec_helper.rbに

config.include Capybara::DSL

と記述しろと書かれているが、そうすると

/vendor/bundle/gems/capybara-2.4.4/lib/capybara/rails.rb:6:in `block (2 levels) in <top (required)>': uninitialized constant Rails (NameError)

とエラーが起こる。 第3章 ほぼ静的なページの作成 | Rails チュートリアル

capybaraが動いていないのだからcapybaraのgithubを見てみると


Using Capybara with RSpec

Load RSpec 2.x support by adding the following line (typically to your spec_helper.rb file):

require 'capybara/rspec'


と書かれていたのでこれを冒頭に記述。 先の

config.include Capybara::DSL

と合わせればうまくテストが動いた。