Capybara与rspec

时间:2013-09-17 11:49:37

标签: ruby-on-rails testing capybara

我刚刚开始用水豚创建测试,我已经遇到了问题。

所以我有一个之前的做法是在DB中创建一个带有值的行。

  @word = Word.create :word => 'bed'

之后我测试是否在页面上找到该行。 此外,我测试创建操作是否正常工作:

    visit keywords_path
    fill_in  'Word', :with => 'work'
    click_button 'Create Word'

    current_path.should == word_path(@word)
    page.should have_content 'work'

我得到了这个失败的测试

creates a new word
 Failure/Error: current_path.should == word_path(@word)
   expected: "/words/1"
        got: "/words/2" (using ==)

我知道问题出在哪里,但是如何检查新创建的行的路径?

1 个答案:

答案 0 :(得分:1)

因为你知道它永远是最后一个,所以试试:

Word.last