setTimeout
Sets the timeouts associated with the current session, timeout durations control such behaviour as timeouts on script injection, document navigation, and element retrieval. For more information and examples, see timeouts guide.
thông tin
It is not recommended to set implicit timeouts as they impact WebdriverIO's behavior
and can cause errors in certain commands, e.g. waitForExist with reverse flag.
Usage
browser.setTimeout({ implicit, pageLoad, script })
Parameters
| Name | Type | Details |
|---|---|---|
timeouts | Timeouts | Object containing session timeout values |
timeouts.implicitoptional | Number | Time in milliseconds to retry the element location strategy when finding an element. |
timeouts.pageLoadoptional | Number | Time in milliseconds to wait for the document to finish loading. |
timeouts.scriptoptional | Number | Scripts injected with execute or executeAsync will run until they hit the script timeout duration, which is also given in milliseconds. |
Example
setTimeout.js
it('should change timeout duration for session with long code duration', async () => {
await browser.setTimeout({
'pageLoad': 10000,
'script': 60000
});
// Execute code which takes a long time
await browser.executeAsync((done) => {
console.log('Wake me up before you go!');
setTimeout(done, 59000);
});
});