如何使用水豚来验证记录数量

时间:2010-09-12 02:31:06

标签: html ruby cucumber capybara

我在Rails 2.3.9项目中使用了水豚和黄瓜。

我有用户索引页面,我有两个记录。使用capybara如何断言页面中只有两条记录。

HTML结构就像这样

<div class='records'>
  <li>record 1<li>
  <li>record 2 </li>
</div>

1 个答案:

答案 0 :(得分:48)

这应该可以解决您的Cucumber步骤定义:

page.has_css?("div.records li", :count => 2)

还有page.has_xpath?(但我不懂xpath)

如果你正在使用Rspec,你可以用Rspec方式用短语表示:

page.should have_css("div.records li", :count => 2)

我昨天必须解决一个非常类似的问题;这是我最终的完整步骤定义。

Then /^I should see only (\d+) tasks$/ do |number_of_tasks|
  page.should have_css("table tr.task", :count => number_of_tasks.to_i)
end