【发布时间】:2021-07-08 09:35:27
【问题描述】:
我正在将 WDIO 与 Jasmine 和 Chai 一起使用。
我收到以下错误,并且我已经尝试找到根本原因超过一天了。
错误:超时 - 异步函数未在 10000 毫秒内完成(由 jasmine.DEFAULT_TIMEOUT_INTERVAL 设置)
代码:
describe('Lead Routing Functionality', () => {
beforeEach(function () {
LightningLeadPage.open();
LightningLeadPage.login();
console.log('[TEST STEP INFO]: Checking Header: ');
});
it('Verify validation', () => {
LightningLeadPage.click_app_launcher();
});
*************
export default class Lightning_Page {
click_app_launcher() {
console.log("[TEST STEP INFO]: Verify App launcher icon is present. ");
console.log('DEBUG : I am waiting...')
this.appLauncher().waitForExist(this.waitDuration());
console.log("[TEST STEP INFO]: Clicking on App Launcher");
this.appLauncher().click();
}
我注意到 console.log('DEBUG : I am waiting...') 没有打印在控制台上。
Error log:
[0-0] Error in "Verify validation"
Error: Timeout - Async function did not complete within 10000ms (set by jasmine.DEFAULT_TIMEOUT_INTERVAL)
at <Jasmine>
at listOnTimeout (internal/timers.js:549:17)
at processTimers (internal/timers.js:492:7)
[0-0] DEPRECATION: An asynchronous before/it/after function took a done callback but also returned a promise. This is not supported and will stop working in the future. Either remove the done callback (recommended) or change the function to not return a promise.
config.js 值:
waitforTimeout: 10000,
connectionRetryTimeout: 90000,
connectionRetryCount: 3,
wdioRetries:3,
jasmineNodeOpts: {
defaultTimeoutInterval: (24 * 60 * 60 * 1000),
expectationResultHandler: function(passed, assertion) {
// do something
}
},
【问题讨论】:
-
我认为
this.appLauncher().waitForExist有问题。你看到DEBUG : I am waiting...更重要的是[TEST STEP INFO]: Click on App Launcher的日志了吗? -
它没有到达 this.appLauncher().waitForExist。甚至不打印 "DEBUG : I am waiting..." 。 .失败并出现错误:[0-0] [TEST STEP INFO]:验证应用启动器图标是否存在。 [0-0]“验证验证”错误:超时 - 异步函数未在 10000 毫秒内(由 jasmine.DEFAULT_TIMEOUT_INTERVAL 设置)在 processTimers(内部/timers.js:492:7) ```
-
好的,那我想你必须检查一下它是否卡在
open和login上。 -
不是。现在我看到它到达 console.log("[TEST STEP INFO]: Verify App launcher icon is present."),然后失败。我怀疑这是一个代码问题。与 WDIO 等待有什么关系?
-
从外观上看,
10s似乎有什么卡住了。是否有任何操作需要超过 10 秒的时间?
标签: javascript jasmine webdriver-io wdio-jasmine