nightwatchJS如何在表上使用assert.containsText?

时间:2016-02-06 23:39:20

标签: automated-tests nightwatch.js

我刚刚开始使用夜视仪,我想确认表格是否正确填充。从终端我可以做类似的事情:

$("div#systemViewTable table tbody tr td.sortable").text()

我得到一堆文字。然而,当我在夜视仪中尝试相同的选择器时,我只得到一个空字符串。 I.E.>

browser.assert.containsText("div#systemViewTable table tbody tr td.sortable", "some text")

如何正常运作?

1 个答案:

答案 0 :(得分:0)

你基本上必须选择:

因为containsText()用于单个元素,所以你不能像引用多个td元素那样使用它。您可以使用tabletbody或为表设置类名(如果您的网站上有多个表,则需要类名,因为选择器必须是唯一的),但这也是匹配文本,如果它在你可能不想要的td元素之外。

否则你的选择是使用例如Selenium elements来获取所有td元素并循环遍历每个元素并将它们与给定的字符串进行比较。有关如何执行此操作的示例,请参阅this answer