WebDriver settings

The Quamotion WebDriver exposes various configuration parameters whose value you can change by modifying the appsettings.json file. This file can be found in the root of your WebDriver folder.

The following settings are available:

General settings

Setting Description Default
webDriverUrl The URL at which the WebDriver will be listen for requests. http://localhost:17894/ To allow external connections you can e.g. use “http://0.0.0.0:17894/"
frontendEnabled Enables or disables the front-end (including the Apps, Devices, Spy and Dashboard pages). true Disabling the front-end also disables the test results database.
AppData The folder in which settings, applications and temporary files are stored. App_Data
commandTemplatesPath The path to the custom templates file. This file contains command templates used to customize the code generator App_Data/commands.json

Logging

Setting Description Default
loggingEnabled Enables or disables logging. true
logLevel The minimum required event level. Supported values: LogAlways, Critical, Error, Warning, Informational, Verbose Informational
logDirectory The path to the directory in which the log files are stored. log
logMaxFileCount The maximum number of log files to keep. 10
tracingEnabled A value indicating whether request tracing is enabled. true

Automation settings

Setting Description Default
googleGeoApiKey The API key to enable the Google API (e.g. allow Google Maps) null
developerDiskDir The folder where the iOS developer disks are installed. App_Data/devimg
developerProfilePath The path to the developer profile to use when signing iOS applications. App_Data/quamotion.developerprofile
developerProfilePassword The password of the developer profile to use when signing iOS applications. quamotion

Docker support

Change these values only if you are hosting the Quamotion WebDriver in a Docker container.

These settings influence how the Quamotion WebDriver communicates with adb (the Android Debug Bridge) and usbmuxd (the iOS USB multiplexer). These services act as gateways which allow the Quamotion WebDriver to interact with these devices.

By default, the Quamotion WebDriver will attempt to launch adb and usbmuxd. If you run one or more instances of the Quamotion WebDriver in a Docker container, you may want these instances to connect to a single instance of adb and usbmuxd which runs on your host. These settings allow you to do so.

Setting Description Default
disableDeviceDaemons A value indicating whether the WebDriver is prevented from launching the device daemons, and should connect to the device daemons over TCP only. false
adbHost The name of the host running adb. “127.0.0.1”
usbMuxerHost The name of the host running usbmuxd “127.0.0.1”

Timeouts

There are a couple of built-int timeouts which determine how long the Quamotion WebDriver will wait for an device to respond to certain commands. You may want to change these values if you find your devices are slower than expected.

Setting Description Default
xcuiTestPlanTimeout The timeout of a Xcode UI Test test plan to start on an iOS device, in seconds. 40
deviceConnectTimeout The amount of time, in seconds, to wait for a device to connect to the PC (usually after a reboot). 180
deviceDisconnectTimeout The amount of time, in seconds, to wait for a device to disconnect from the PC (usually after a reboot has been triggered). 60

Screenshot Feed and Remote control

The Quamotion WebDriver comes with a built-in VNC server, which allows you to connect to iOS and Android devices using a standard VNC client, and control these devices remotely. This VNC server is disabled by default. You can choose to enable the VNC server by changing these settings.

Setting Description Default
vncServerEnabled A value indicating whether the VNC server should be enabled. false
vncServerPort Gets the port at which the VNC server should listen. This value only takes effect when vncServerEnabled is set to true 5900
iOSScreenshotFeed The screenshot feed to use for iOS. Supported values: wda, screenshotr “wda”

Database

Changing these settings is not supported. You can enable or disable the use of the database by changing the frontendEnabled setting.

The Quamotion WebDriver stores test results in a SQLite database. These settings allow you to configure the database in which these results are stored.

Setting Description Default
databaseProvider sqlite
databaseConnectionString

These settings are deprecated

You can configure the Quamotion WebDriver to run as a Windows Service.

Setting Description Default
serviceName The name of the Windows Service WebDriver
serviceDisplayName The display name of the Windows Service Quamotion WebDriver Service
serviceDependencies The dependencies (if any) of the Windows Service
serviceStartupType The startup type of the Windows Service. Usually Manual or Automatic. Manual
serviceRestartOnFailure Whether the service should restart on failure, or not.