鉴于我有一个包含10个用户列表的页面, 如何测试我有10个用户显示链接?
我试过这个:
Then /^I should see a list of (\d+) users$/ do |num|
page.should have_selector('a', {:href=>"users/*", :count => num})
end
而且:
Then /^I should see a list of (\d+) users$/ do |num|
page.should have_selector('a', {:href=>/users\/\d+/, :count => num})
end
但两者都返回预期的css“a”返回一些东西(RSpec :: Expectations :: ExpectationNotMetError)
但是,如果我省略:count参数,则测试总是通过:href参数中的任何内容(甚至是错误的模式)。
答案 0 :(得分:5)
我会使用带有contains
函数的xpath:
page.should have_xpath("//a[contains(@href,'users')]"), :count => num)
任何num
个元素的a
次出现与href
属性相匹配,其中包含“用户”文字。