Server Arguments
These arguments are set when you launch the Appium server with device-farm plugin.
Argument | Required | Description | Default | Options |
---|---|---|---|---|
--plugin-device-farm-platform |
Yes | Platform to run tests against for parallel execution | None | both ,ios ,android |
--plugin-device-farm-ios-device-type |
No | Types of ios devices to include | both |
both ,simulated ,real , For example: If you want to run only against iOS simulator then specify --plugin-device-farm-ios-device-type=simulated |
--plugin-device-farm-android-device-type |
No | Types of android devices to include | both |
both ,simulated ,real , For example: If you want to run only against android emulator then specify --plugin-device-farm-android-device-type=simulated |
--plugin-device-farm-skip-chrome-download |
No | Downloads require chromedriver for web testing | true |
false Setting to false will download required chromedriver for web testing on chrome |
--plugin-device-farm-hub |
No | HUB IP address and port the node should register | None | hub: "http://hubhost:hubport" , If you want to run tests distributed across remote and local machine |
--plugin-device-farm-max-sessions |
No | Limit how many sessions can be active at a time. This is useful when you need limit sessions based on host machine resource availability. | None | <number> e.g. 8 |
--plugin-device-farm-derived-data-path |
No | DriveDataPath of WDA to speed iOS test run. | None | {'simulator': 'PathtoDrivedDataPath', 'device': 'PathtoDrivedDataPath'} |
--plugin-device-farm-adb-remote |
No | ADB Remote host and port as array | None | ["remoteMachine1IP:adbPort", "remoteMachine2IP:adbPort"] |
--plugin-device-farm-proxy-ip |
No | For remote execution if the node machine is behing proxy | None | http://remoteMachineProxyIP:proxyPort , For example: 'https://10.x.x.x:3333' |
--plugin-device-farm-emulators |
No | The name of Android emulator to run the test on. The names of currently installed emulators could be listed using avdmanager list avd command. If the emulator with the given name is not running then it is going to be launched on automated session startup. | None | [{"avdName": "device1, launchTimeout: 200000 }] Refer to Emulator (Android Virtual Device) |
Emulator (Android Virtual Device)
Capability Name | Description |
---|---|
avdName | The name of Android emulator to run the test on. The names of currently installed emulators could be listed using avdmanager list avd command. If the emulator with the given name is not running then it is going to be launched on automated session startup. |
launchTimeout | Maximum number of milliseconds to wait until Android Emulator is started. 60000 ms by default |
readyTimeout | Maximum number of milliseconds to wait until Android Emulator is fully booted and is ready for usage. 60000 ms by default |
args | Either a string or an array of emulator command line arguments. If arguments contain the -wipe-data one then the emulator is going to be killed on automated session startup in order to wipe its data. |
env | Mapping of emulator environment variables. |
Above cli arguments can also be set from config.json file Refer here
Proxy configuration for axios
appium-device-farm will use the proxy provided and pass that to HttpAgent and HttpsAgent.
The proxy object definition will be as per the axios documentation available here - https://axios-http.com/docs/req_config
Example: