【发布时间】:2017-02-20 18:56:59
【问题描述】:
我正在为一个简单的测试而苦苦挣扎
require "rails_helper"
RSpec.feature "Home page", :type => :feature do
scenario "When a user visit it" do
visit "/"
expect(page).to have_css('article', count: 10)
end
end
在视图中我有这个代码
<% @articles.each do |article| %>
<article>
<header> <%= article.title%> </header>
<div class="content-summary"> <%= article.body %> </div>
</article>
<hr/>
<% end %>
当我运行测试时,我得到了
Failure/Error: expect(page).to have_css('article', count: 10)
expected to find css "article" 10 times but there were no matches
我运行服务器,我可以看到存在 10 个文章标签。
当我将视图更改为此
<% 10.times do %>
<article>
<header> </header>
<div class="content-summary"> </div>
</article>
<hr/>
<% end %>
测试通过
请帮帮我
【问题讨论】:
-
能否请您出示整个测试文件?
-
@Slava.K 我添加了整个测试文件
-
您的测试中没有创建任何文章。您需要在
before块中创建一些。当您运行服务器时,它使用development数据库,而测试套件使用testone -
@Slava.K 你是对的。请把它写成接受它的答案:)
标签: ruby-on-rails rspec capybara rspec-rails