0

私はグーグルでスタックオーバーフローを約4時間読んだことがありますが、理解できません。レールチュートリアルと同様のテストが失敗する理由です。

テストは非常に簡単です:


# encoding: utf-8

require 'spec_helper'

describe "StaticPages" do
  subject { page }

  describe "Contacts page" do
    before { visit contacts_path }

    it { should have_selector(:title, text: "|") }
  end
end

それで、save_and_open_page を追加して、連絡先ページの何が問題なのかを確認しますが、見栄えは良いです。タイトル タグが存在し、"|" が含まれています。

理解できません、何が問題なのですか。私は:

  • 代わりにアクセスしようとしました。
  • ページの代わりに応答。
  • 本体で永続的に何か他のものをチェックします (body.should have_selector(:h1))。

また、rspec出力をより有益なものに改善する方法を理解しようとしました。今私は見ます:

Failure/Error: it { should have_selector(:title, text: "|") }
       expected id :title with text "|" to return something
4

1 に答える 1

1

私が知ってhave_selectorいるように、カピバラのマッチャーであり、チュートリアルによると、最初の引数として、引用符または xpath 表記で html 要素名を使用できますが、シンボルは使用できません。

于 2012-05-01T19:19:52.417 に答える