所以你可以进行这样的测试:
find(".blah").should have_content("blah blah")
但是有没有办法检查是否有什么东西在等等?
find(".blah").should have_some_content
答案 0 :(得分:2)
我不相信有你想要的Capybara :: RSpecMatchers。但是,您可以使用底层的Capybara :: Node :: Matchers。
尝试:
find(".blah").has_no_text?.should be_true
如果你真的想使用Capybara :: RSpecMatchers,你可以使用have_content
和一个寻找任何非空格字符的正则表达式。
find(".blah").should have_content(/[^\s]/)
答案 1 :(得分:1)
看起来你正在使用Capybara。
我会像这样写
而不是相关的风格page.should have_css('.bar', text: 'foo')
答案 2 :(得分:0)
我会检查find(".blah")
的返回值,看看它在以下两种情况下是什么:
nil
?)被退回然后编写测试以确认在您的情况下,存在该类的一些元素很容易。这只是知道.find
方法的返回值与存在和未找到的东西之间的差异的问题。