Node.js Selenium等到文本等于

时间:2016-08-10 15:54:30

标签: javascript node.js selenium

我正在尝试编写一个等待文本等于某个值的函数。在我的element.js(代表所有网页元素)中,我写了这个函数:

getText() {
  return this.browser.getText(this.selector);
}

waitForTextEquals(expectedText) {
  browser.waitUntil(function () {
    console.log(this.getText().toString() + "||" + expectedText)
    return this.getText() === expectedText
  }, 5000, 'expected text to be different after 5s');
}

在我的mocha脚本中,我有这个:

it('updates payment due date when issue date and payment terms change', () => {
  invoiceEditPage.details.paymentDueDateField.waitForTextEquals(formatDate(moment(today).add(15, 'days')))
    return invoiceEditPage.details.paymentDueDateField.getText()
    .then((dueDate) => assert.strictEqual(dueDate, formatDate(moment(today).add(15, 'days'))));
});

但是,这不会导致程序等待,即使它是同步的。这是为什么?

由于

0 个答案:

没有答案