问题描述
我正在使用带有黄瓜 js 的量角器 我有 async 和 await 的所有功能,还设置了全局超时
var {setDefaultTimeout} = require('cucumber'); setDefaultTimeout(60 * 1000);
Then('I click on tab',async ()=> {
await organizationoperation.clickHeaderTab();
});
问题 - 如果我使用错误的 xpath/element 不在 UI 中,在这种情况下会出现以下错误
或者如果我直接使用
Then('I click on tab',async ()=> {
const d = await $('.xxxxx').getText();
console.log(d)
});
得到相同的错误 --> 错误:函数超时,确保承诺在 30000 毫秒内解决
解决方法
您是否在启动浏览器时在代码中使用了隐式等待?如果是,请确保您的超时时间超过您提供的隐式等待时间。 如果不是,则声明隐式等待时间小于默认 setDefaultTimeout(60 * 1000);
如果隐式等待时间超过默认时间,我们用来获取此错误函数超时,请务必使用 in **** 解决。如果隐式等待时间小于默认时间,则通过隐式等待等待元素将首先到期并抛出 Element Not Found 异常。