3

我正在查看水豚匹配器文档:http ://rubydoc.info/github/jnicklas/capybara/master/Capybara/Node/Matchers

我似乎无法找到检查 adiv是否为空白的方法。即我想验证类似的东西的存在

<div class="test"></div>

我想过assert_no_selector,但我不认为div显示中的文本节点。has_no_content似乎没有工作。

4

8 回答 8

3

您可以访问 div 内容find("#test").text

于 2012-10-22T14:37:20.900 回答
0

以下将与 a 一起使用test class

assert_selector('div.test', text: '')

相反,如果您正在寻找一个test id,那么使用这个:

assert_selector('div#test', text: '')
于 2014-07-07T03:11:54.097 回答
0

像 assert_selector('div.test', text: /\A\Z/) 这样的东西应该做你想做的事。将正则表达式传递给 :text 选项允许您对元素的内容进行全文匹配。

于 2014-07-07T18:04:41.127 回答
0

我使用 CSS:empty选择器:

expect(page).to have_selector('#my_element:empty')
于 2015-01-30T14:51:31.397 回答
0
expect(page).to have_selector(:xpath, "//div[contains(@class, 'test') and normalize-space(string(.)) = '']")
于 2017-01-11T18:35:00.830 回答
0

expect(page).to have_css('.test', exact_text: '')

会为你工作

于 2018-12-28T10:31:51.007 回答
-1

你可以试试这个:

assert_selector('div', class: 'test', text: '')
于 2012-10-22T14:36:37.477 回答
-1

还:

page.find('.test').has_content?('')

或者

expect(page.find('.test')).to have_content('')
于 2014-11-05T03:36:50.543 回答