addCommand
The browser method addCommand helps you to write your own set of commands.
info
You can find more information on adding custom commands in the custom command guide.
Usage
browser.addCommand(name, callback, elementScope)
Parameters
| Name | Type | Details |
|---|---|---|
name | string | name of the custom command |
callback | Function | function to be called |
elementScopeoptional | Boolean | extend the Element object instead of the Browser object |
Example
execute.js
await browser.addCommand('getUrlAndTitle', async function (customParam) {
// `this` refers to the `browser` scope
return {
url: await this.getUrl(),
title: await this.getTitle(),
customParam: customParam
}
})
//usage
it('should use my add command', async () => {
await browser.url('https://webdriver.io')
const result = await browser.getUrlAndTitle('foobar')
assert.strictEqual(result.url, 'https://webdriver.io')
assert.strictEqual(result.title, 'WebdriverIO · Next-gen browser and mobile automation test framework for Node.js | WebdriverIO')
assert.strictEqual(result.customParam, 'foobar')
})