assert_select空数据属性

时间:2015-09-01 09:17:53

标签: ruby-on-rails testing

我希望编写一个视图测试来断言HTML中存在 empty 数据属性。

我的HTML是这样的:

<section data-my-name-here></section>

我的测试是:

assert_select '[data-my-name-here]'

测试结果是:

Expected at least 1 element matching "[data-my-name-here'']", found 0.

请注意该测试如何在属性中添加引号,以及它似乎期望值。

如果我在HTML中添加一个值并测试它,我可以通过测试。

<section data-my-name-here='true'></section>

assert_select "[data-my-name-here='true']"

但我不想为了测试而改变我的标记。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

我最终求助于使用Nokogiri,在我看来assert_select无法识别没有值的属性,至少我没有改变视图。

html = Nokogiri::HTML.parse self.rendered my_element_count = html.xpath('//*[@data-my-name-here]').size assert_equal 1, my_element_count