Available capabilities

These are the capabilities you can use during an automation session.

The kobiton:visualValidation capability is deprecated.

Kobiton Capabilities

These capabilities are unique to Kobiton.

  • To use Kobiton capabilities in Basic Appium 2 script, use the 'kobiton:' vendor prefix, i.e. 'kobiton:sessionName'.

  • Capabilities with 'kobiton:' in the name cannot be used without the prefix.

Not all Kobiton capabilities can be used in Basic Appium 2 scripts.

app

The app to use during the test session. If the app is not already installed on the device, the value of the second parameter will be used to download and install the app. Only available for app testing.

  • Type: string

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("app", "kobiton-store:000111"); // Install the app using the Kobiton app repository.
capabilities.setCapability("app", "https://kobiton.docsapp.net/apps/app_id"); // Install the app using a direct download link.

kobiton:baselineSessionId

Select a baseline session to use for kobiton:flexCorrect or [_visualValidation].

Example
capabilities.setCapability("kobiton:baselineSessionId", 0000011); // Select baseline session for flexCorrect or visualValidation by assigning a kobitonSessionId.
This capability cannot be used in Basic Appium 2 sessions.

captureScreenshots

Screenshots will be captured after each test step automatically. They’ll be available in the session overview after the test session.

  • Type: boolean

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("captureScreenshots", true); // Take a screenshot after each test step.
This is not available for native and hybrid apps, as well as devices on Android 6.0 and earlier.

deviceGroup

The device group within the test session metadata.

  • Type: string

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("deviceGroup", "ORGANIZATION"); // Assign to the device team.

deviceName

The device name. Assign multiple platform versions using wildcards (*).

  • Type: string

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("deviceName", "iPhone 11 Pro"); // Use iPhone 11 Pro as the device name.
capabilities.setCapability("deviceName", "*Pro"); // Use any device name ending with 'Pro'.
capabilities.setCapability("deviceName", "iPhone 11*"); // Use any device name starting with 'iPhone 11'.

ensureWebviewsHavePages

Ensures that all WebView elements in the application have loaded their content.

Example
capabilities.setCapability("ensureWebviewsHavePages", true); // Set to true.

kobiton:flexCorrect

When a script is run on different devices, element selection is autocorrected. For more information, see Add flexCorrect to capabilities.

Appium Self-healing (flexCorrect) is not currently supported in Standalone.
Example
capabilities.setCapability("kobiton:flexCorrect", true);  // Enable flexCorrect by setting capability to true.
This capability cannot be used in Basic Appium 2 sessions.

groupId

The group ID within the test session metadata.

  • Type: string

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("groupId", "0011"); // Assign to the Docs Team.

sessionDescription

The description of the test session, typically between 50-72 characters, but can be set to any length.

  • Type: string

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("sessionDescription", "This tests the login feature with biometric authentication."); // Provide the test session description.

sessionName

The name of the test session.

  • Type: string

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("sessionName", "Automation test session"); // Specify the test session name.

tagName

Find available devices with a specific tag. Only 1 tag can be provided.

  • Type: string

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("tagName", "TagName1"); // Find device with tag 'TagName1'

kobiton:tags

Categorize and organize sessions by assigning a custom tag at the time of session creation.

  • Type: string

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("kobiton:tags", ["nightly-run", "login-flow", "regression"]);

useConfiguration

The device configuration to use during the test session. Only available for web testing.

  • Type: string

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("useConfiguration", "kobiton"); // Use this pre-defined configuration for the test session.

Appium Capabilities

Kobiton supports most Appium capabilities. The capabilities listed below are typically required or have specific use cases unique to Kobiton.

For Basic Appium 2 sessions, follow the Appium 2 guidelines for vendor prefix.

accessKey

The Kobiton API key for authentication. Only required for Appium java-client 9.2.2 or above.

  • Type: string

  • Required capabilities: 'appium:username'

  • Optional capabilities: None

Example
capabilities.setCapability("appium:accessKey", "ac9****8b-5*fc-4485-82eb-c5b****baed"); // The API key to authenticate with.

autoWebview

The webview context to use during the test session. Only available for web testing.

  • Type: boolean

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("appium:autoWebview", true); // Automatically select the webview context.

browserName

The web browser to use during the test session. Only available for web testing.

  • Type: string

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("browserName", "safari"); // Use Safari for web testing on iOS.
capabilities.setCapability("browserName", "chrome"); // Use Chrome for web testing on Android.

deviceOrientation

The starting orientation for the device screen.

  • Type: integer

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("appium:deviceOrientation", "portrait"); // Set the device's starting orientation to portrait.
capabilities.setCapability("appium:deviceOrientation", "landscape"); // Set the device's starting orientation to landscape.

fullReset

Remove all apps installed during the test session. To keep the apps and only remove their app data, use noReset instead.

  • Type: boolean

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("appium:fullReset", true); // Delete the app and the related data.
This is only available for private and local devices.

noReset

Remove all app data from apps installed during the test session. To remove the full app, use fullReset instead.

  • Type: string

  • Required capabilities: None

  • Optional capabilities: None

Example
capabilities.setCapability("appium:noReset", false); // Delete just the app data.
This is only available for private and local devices.

'platformName'

The type of platform, i.e Android or iOS.

  • Type: boolean

  • Required capabilities: None

  • Optional capabilities: None

udid

The device Unique Device Identifier (UDID).

  • Type: string

  • Required capabilities: None

Example
capabilities.setCapability("appium:udid", "01234567-89ab-cdef-0123-456789abcdef"); // Use the device with this UDID.

username

The Kobiton username for authentication. Only required for Appium java-client 9.2.2 or above.

  • Type: string

  • Required capabilities: 'appium:username'

  • Optional capabilities: None

Example
capabilities.setCapability("appium:username", "johndoe"); // The username to authenticate with.