【发布时间】:2021-02-09 09:42:01
【问题描述】:
这是我想要完成的:
check if element "Error" span exists
then do something if it does ===
else check if element "el2" span exists
then do something ====
else
do something
这是我的代码
let done = false;
let errorOccured = false;
let isManualStep = false;
do {
try {
console.log('Checking span.label-red=Error...................')
let errorStepExists = $('span.label-red=Error').isExisting();
if (errorStepExists) {
console.log('Error encountered...................')
done = true;
}
} else {
console.log('Error not encountered...................')
let el2Exists = $('span>td.col-md-2=Waiting').isExisting();
if (mel2Exists) {
console.log('Encountered...................')
}
} catch (e) {
console.log(e);
}
}
while (!done);
如果元素不存在,它似乎不会进入 catch 块,而是因为超时错误而未能通过我的测试。
错误:超过 20000 毫秒的超时。测试“xxxxxx”中的执行时间过长。尝试减少运行时间或增加测试规范的超时时间 (https://webdriver.io/docs/timeouts.html)。
【问题讨论】:
标签: javascript selenium-webdriver timeout