call
You can use call
to execute any async action within your test spec.
It accepts promises and stops the execution until the promise has been resolved.
інформація
With WebdriverIO deprecating synchronous usage (see RFC) this command is not very useful anymore.
Usage
browser.call(callback)
Parameters
Name | Type | Details |
---|---|---|
callback | Function | function to be called |
Example
call.js
it('some testing here', async () => {
await browser.url('http://google.com')
// make an asynchronous call using any 3rd party library supporting promises
// e.g. call to backend or db to inject fixture data
await browser.call(() => {
return somePromiseLibrary.someMethod().then(() => {
// ...
})
})
// example for async call to 3rd party library that doesn't support promises
const result = await browser.call(() => {
return new Promise((resolve, reject) => {
someOtherNodeLibrary.someMethod(param1, (err, res) => {
if (err) {
return reject(err)
}
resolve(res)
})
})
})
});