检查按钮文本与Nightwatch.js中的某个字符串匹配

时间:2018-06-07 21:32:30

标签: selenium selenium-webdriver automation nightwatch.js

我有一段时间试图编写测试,我检查按钮上的文本是否与某个字符串匹配。我试过“.valueContains”,“。attributeContains”并得到空白或null,我尝试了getText(),但这似乎只返回一个对象。

我觉得这很明显我很想念,所以任何帮助都会受到赞赏!

2 个答案:

答案 0 :(得分:0)

如果没有真正查看代码,我们就很难预测到最新情况。但是,selenium中的所有方法都会返回一个promise,因此您需要等待它解析。

function async getTextOfButton() {
  const element = await driver.findElement(By.className('item-class'));
  const text = await element.getText();
}

如果你没有使用async / await你可以做

driver.findElement(By.className('item-class')).then(function(element) {
  element.getText().then(function(text) {
      console.log(text);
  });
});

答案 1 :(得分:0)

根据你在问题中到目前为止所写的内容,我想知道你是否有理由不能使用.containsText?

.waitForElementVisible('.yourclass', this.timeout)
.assert.containsText('.yourclass', 'Text of Button you expect to match')

http://nightwatchjs.org/api#assert-containsText