我正在创建一个应用程序,一旦用户登录,我在记录索引上有一个简单的删除记录。当我没有用户在我的 rspec 规范下登录时,删除工作。这意味着 has_no_content 测试返回 true。但是一旦我设置了访问记录索引所需的身份验证,测试就会失败。有什么想法吗?
before do
@records = Factory(:record)
login_user
end
it "should delete a record" do
visit records_path
find("#record_#{@records.id}").click_link 'Delete'
page.should have_content "Record has been deleted"
page.should have_no_content "Record 1"
end
最佳答案
没关系 - 我在使用 launchy 的帮助下弄明白了。
我最初的想法是,我是如何丢失“ session ”的,一旦单击删除链接,就会再次显示登录页面。根本不是这样。我确实注意到我的应用程序的标题中也包含“Record 1”。因此,由于显而易见的原因,规范会失败。 前往办公 table - 对此感到抱歉,但我认为我会发布自己的愚蠢并且看起来比我需要的更深入。
关于ruby-on-rails - RSpec 和 Capybara 设置,have_no_content 似乎不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9055137/