rspecを実行した時にuninitialized constant Capybara (NameError)というエラーがでる


railstutorialのspecの実行でエラーがでました(☝ ՞ਊ ՞)

Capybaraが無いとエラーがでる

rspecコマンドを実行します。

bundle exec rspec spec/requests/static_pages_spec.rb
/var/www/html/rails/railstutorial2/spec/spec_helper.rb:46:in `block in ‘: uninitialized constant Capybara (NameError)
from /home/vagrant/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rspec-core-2.13.1/lib/rspec/core.rb:107:in `configure’

エラーがでました。

該当の行はCapybara::DSLと書いている行です。

config.include Capybara::DSL

Capybaraが無いのですかね。

GemfileにCapybaraを追加

gem listを確認してからGemfileにcapybaraを追加します。

group :development, :test do
gem ‘sqlite3’, ‘1.3.8’
gem ‘rspec-rails’, ‘2.13.1’
gem ‘capybara’ # 追加
end

Gemfileを更新したのでbundle installをします。

動作確認

再びrspecのコマンドを実行します。

bundle exec rspec spec/requests/static_pages_spec.rb
F

Failures:

1) StaticPages Home page should have the content ‘Sample App’
Failure/Error: expect(page).to have_content(‘Sample App’)
expected #has_content?(“Sample App”) to return true, got false
# ./spec/requests/static_pages_spec.rb:9:in `block (3 levels) in

Finished in 0.13441 seconds
1 example, 1 failure

Failed examples:

rspec ./spec/requests/static_pages_spec.rb:7 # StaticPages Home page should have the content ‘Sample App’

Randomized with seed 13050

おお!こんどはテストが失敗しました(☝ ՞ਊ ՞)capybaraが無いよっていうエラーで合っていたみたいです。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です