我正在使用 CodeceptJS 和 WebdriverIO 帮助器进行一些端到端测试,我想在Vue.js SPA中等待一条错误消息。
我想知道是否有一种方法可以在测试运行期间异步等待文本。我不想使用wait()
,因为这会增加测试的持续时间,相反,我希望这样做,例如,在测试的运行期间,如果看到一些“错误”文本,它将使测试失败。
与dontSee()
函数类似,但在测试的背景下,我无法很好地解释它。
答案 0 :(得分:1)
例如,验证错误没有立即出现,因此如果我在页面中看到该标签,则需要等待。我不想停止测试十秒钟,我只是想要像“ Watcher”之类的标签持续几秒钟。
I.click('#btnSave');
//I.wait(10);
I.dontSee('Error validate');
I.waitForText('Save successful', 5);
waitForText()
非常适合相反的需求。没有像waitForTextToFail()
这样的函数。
答案 1 :(得分:1)
我不确定我是否完全理解您的问题,但是我认为您可能正在寻找类似以下的内容:http://webdriver.io/api/utility/waitForVisible.html
您会注意到它有一个名为reverse
的参数,您可以使用它进行相反的声明。
它可能看起来像这样:browser.waitForVisible('#elem', 3000, true);
reverse
标志也适用于waitForText
方法。