2

Michael Hartl の RailsTutorial.org の第 8 章で演習 2 を実行しようとしています。spec/support/utilities.rb ファイルに以下を追加しました。

RSpec::Matchers.define :have_title do |message|
  match do |page|
    page.should have_selector('title', text: message)
  end
end

authentication_pages_spec.rb ファイルを変更しました

it { should have_selector('title', text: 'Sign in') }

it { should have_title('Sign in') }

これで問題なく動作することを期待していましたが、テストを実行すると次のエラー メッセージが表示されます。

無効な情報での認証サインイン失敗/エラー: it { should have_title('Sign in') } NoMethodError: undefined method has_title?' for #<Capybara::Session> # ./spec/requests/authentication_pages_spec.rb:22:inblock (4 levels) in '

メソッドを正しく記述したと信じているのに、メソッドがないと不平を言っている理由がわかりません。

4

1 に答える 1

0

解決しました。ローカルサーバーとスポークを再起動したところ(まだ完全には理解できていません)、動作し始めました。ごめん。

于 2013-01-27T01:28:17.833 に答える