如何测试RSpec matcher在页面上找到的内容的匹配数?
我基本上是在尝试获取选项:count为has\u css提供的“has\u content?”或“should has\u content”匹配器的功能?matcher.你能试试像这样的东西吗 以下是几个例子:如何测试RSpec matcher在页面上找到的内容的匹配数?,rspec,Rspec,我基本上是在尝试获取选项:count为has\u css提供的“has\u content?”或“should has\u content”匹配器的功能?matcher.你能试试像这样的东西吗 以下是几个例子: describe 'my awesome page' do before :each do visit root_path end # css just for querying DOM it 'number of titles should be huge'
describe 'my awesome page' do
before :each do
visit root_path
end
# css just for querying DOM
it 'number of titles should be huge' do
page.all(:css,'h2.awesome_header').length.should have_at_least(3).items
end
it 'has exactly 4 div elements' do
page.all(:css,'div.awesome_class').length.should == 4
end
# For querying content you can try :xpath instead :css.
it 'has paragraps with text' do
page.all(:xpath, '//div[contains(., "t")]').length.should == 9
end
end
更新:
我找到了更优雅的方法。
检查此处的文档:
下面是一个工作示例
page.all(:css, 'p', :text => /.*wellcome.*/).length.should == 2
不知道你在这里是什么意思。你能用这种语法给我写一个示例测试吗?这些都是很好的示例,但是我真的很想找到一个字符串在呈现页面上出现的次数,而不知道它在DOM中的位置。我会投票支持你的答案,因为这是一个很好的信息,但我不会把它标为“答案”,因为它并没有真正给我一个方法去做我想做的事情。非常感谢:)你可以对-page.text使用一些regexp。是的,这正是我想尝试的事情。谢谢:)