Appium Service
Handling the Appium server is out of the scope of the actual WebdriverIO project. This service helps you to run the Appium server seamlessly when running tests with the WDIO testrunner. It starts the Appium Server in a child process.
Installation
The easiest way is to keep @wdio/appium-service
as a devDependency in your package.json
, via:
npm install @wdio/appium-service --save-dev
Instructions on how to install WebdriverIO
can be found here.
Configuration
In order to use the service you need to add appium
to your service array:
// wdio.conf.js
export const config = {
// ...
port: 4723, // default appium port
services: ['appium'],
// ...
};
Options
The following options can be added to the wdio.conf.js file. To define options for the service you need to add the service to the services
list in the following way:
// wdio.conf.js
export const config = {
// ...
port: 4723, // default appium port
services: [
['appium', {
// Appium service options here
// ...
}]
],
// ...
};
logPath
The path where all logs from the Appium server should be stored.
Type: String
Example:
export const config = {
// ...
services: [
['appium', {
logPath : './'
}]
],
// ...
}
command
To use your installation of Appium, e.g. globally installed, specify the command which should be started.
Type: String
Example:
export const config = {
// ...
services: [
['appium', {
command : 'appium'
}]
],
// ...
}
args
Map of arguments for the Appium server, passed directly to appium
.
See the documentation for possible arguments.
The arguments should be supplied in lower camel case, so --pre-launch true
becomes preLaunch: true
or passed as an array.
Type: Object
or Array
Default: {}
Example:
export const config = {
// ...
services: [
['appium', {
args: {
// ...
debugLogSpacing: true,
platformName: 'iOS',
// ...
}
// or
// args: ['-p', '4722', '--relaxed-security', '--log-level', 'info:info']
}]
],
// ...
}
For more information on WebdriverIO see the homepage.