Nightwatch.js-assert.containsText我正在寻找一个字符串,但为空(空)

时间:2019-03-26 04:55:40

标签: nightwatch.js

这是我的代码的一个小插曲:

browser
.waitForElementPresent('(//*[@class="textsize-xlarge"])[1]',5000)
.assert.containsText('(//*[@class="textsize-xlarge"])[1]', 'TEST-69554083978')

我想使用assert.containsText()来验证元素是否具有字符串。 所以我正在尝试检查class textsize-xlarge是否包含文本

  

“ TEST-69554083978”

从视觉上我可以看到它确实存在,但是守夜返回了一条错误消息,说是预期的

  

“ TEST-69554083978”得到了“”

有人可以告诉我我在做什么错,并指出正确的方向吗?

1 个答案:

答案 0 :(得分:0)

  

browser.useXpath(); // xpath将用作定位策略,因此   您传递的所有选择器都应该是xpath选择器

     

browser.useCss(); //切换回CSS选择器定位器   您的xpath

let locator =“ [@ class ='textsize-xlarge'] // * [包含(text(),'TEST-69554083978')]”“; //请修改上述定位符,因为我不知道您的DOM,但是如果您需要有关Xpath的帮助,我可以提供进一步的帮助

return browser
        .useXpath()
        .waitForElementPresent(locator)
        .assert.elementPresent(locator);

您可以了解有关节点断言的信息:Node Assertions