Appium Capabilities

The OpenText Functional Testing Lab capabilities extend the standard Appium capabilities. This topic provides information about several common capabilities.

Note: **Use prefix "FTLab" for OpenText Functional Testing Lab specific Appium capabilities. For backward compatibility, the prefix "dl"or "uftm" is still supported.

Example: For userName, use FTLab:userName.

CapabilityRequiredRequires FTLab prefix**Description
oauthClientId/
userName
Check mark * Check mark

An Execution type access key/ user name that is needed to run tests in OpenText Functional Testing Lab.

For details on access keys, see Generate and manage access keys.

oauthClientSecret/ passwordCheck mark*Check mark* See comments by oauthClientId/ userName.
tenantIdCheck markCheck mark

When working with shared spaces enabled, include the nine-digit shared space ID. You can find this in the toolbar of the Lab Console. For details, see Connect to a shared space. The default shared space ID is 999999999.

tenantId can be sent as a number or as a string.

app-- 

Not supported. To install an app on a device, use appPackage and appActivity for Android, and bundleId for iOS.

appiumVersionX markCheck mark

Defines the Appium major version to use for your test. The default is Appium version 2. To use Appium version 1, set this capability to v1.x.

appPackage (Android)Check mark 

The package name that identifies the app, displayed as Package ID in the app details card. For example, "com.Advantage.aShopping".

If the app is not already installed on the device, and the app exists in the database, it is installed automatically before running the test steps.

appActivity (Android)Check mark 

The name of the Android activity to be launched, displayed as the Launch activity in the app details card.
If the app is not already installed on the device, and exists in the database, it is installed automatically before running the test steps.

appCounterX markCheck markInstall a specific upload of an app on the device. The value can be a number, a number string, or latest.

If the specified upload does not exist in the lab but is already installed on the device, the installed app is launched.

For details on app uploads, see App options - Details window in Manage apps.

bundleId (iOS)Check mark 

A unique identifier, the Bundle ID of the app, displayed as Package ID in the app details card. For example "com.mf.iShopping"

If the app is not already installed on the device, and the app exists in the database, it is automatically installed on the device before running the test steps.

installPackagedAppX markCheck markInstall the packaged version of the app for testing. Include this capability when using simulations such as authentication, photo, barcode, and QR code simulation. For details on simulations, see Appium simulations.

deviceHostingType

X markCheck mark"PrivateOnPremise", "Public", or "PrivateHosting"

deviceType

X mark "real" or "emulator"
platformNameX mark "Android" or "iOS"
platformVersionX mark 

The version of the OS. You can specify a enumeration symbol, such as <, >, <=. >=, and =.

For example, "platformVersion", ">5.0.1"

deviceNameX mark 

The physical or emulated device name. You can specify a manufacturer, model, or logical name as it appears in the OpenText Functional Testing Lab console.

If no device name is specified, the script uses a default device for the specified capabilities. Use this capability in conjunction with or instead of udid.

Use these guidelines when specifying a device by its manufacturer, model name, or logical name.

  • By default, the search engine performs a fuzzy search, returning the first device that matches part of the string, even if it is not the best match.
  • If your device name is a sub-string of another device's name, use other capabilities such as udid, to avoid ambiguity.
  • To match an exact string, use a refined search with double quotes. For example "\"Apple iPhone 5c (GSM+CDMA)\"" looks for a device with that exact manufacturer and model name. (Note the use of backslashes as escape characters.)
udidX mark 

The UDID identifier of the device as assigned by OpenText Functional Testing Lab.

If no UDID is specified, the script uses a default device for the specified capabilities. Use this capability in conjunction with or instead of deviceName.

browserNameCheck mark* 

When testing web applications, the browser being tested, such as "Safari" for iOS and "Chrome", "Chromium", or "Browser" for Android.

When testing apps, either omit this capability or set it to an empty string. However, if you are testing apps with Node.JS wd, you must add this capability and set it to an empty string.

sourceX markCheck mark

The source lab/s for the device:

  • When working with OpenText hosted devices use the value HOSTED, or use FTLab|HOSTED (for both on premises devices and OpenText hosted devices).

  • For ADF devices, use AWS.

When no source is specified, the default value FTLab is used.

automationNameX mark 

iOS

You can run tests on iOS devices without requiring a Mac machine. The automation method used for iOS is XCUITest.

Android OS 8.0 & higher

UiAutomator2 is the default automation engine. The uiautomator2 driver uses Google's UiAutomator2 technology to allow automation on a device or emulator. To overwrite the default and use UiAutomator1, set the value to "android".

 

mcWorkspaceNameX markCheck mark

Enables you to specify an application which was uploaded to a specific workspace.

fullResetX mark 

Uninstall the app before and after the test. When using this capability, the app is uninstalled before the test, installed for testing, and then uninstalled again when the test ends. For iOS devices, when fullReset is set to true, resetOnSessionStartOnly must be set to false.

Supported only when using the bundleID (iOS) or appPackage with appActivity (Android) capabilities.

noResetX mark When using this capability, the app is installed for testing on the device only if is not already installed.
Supported only when using the bundleID (iOS) or appPackage with appActivity (Android) capabilities.
videoX markCheck mark

Set to true to record a video of the test.

To generate a recording of a test session, video recording must also be enabled in Administration settings. For details, see File storage settings in Administration settings.
OpenText Core SDP: The video recording setting is always enabled.

For details on how to download the video, see Test results.

collectMetricsX markCheck mark

By default, the default value is set to true. To disable collection of metrics, set the capability to false: capabilities.setCapability ("FTLab:collectMetrics", false)

Metrics are provided in a csv file for download. Metrics include the following:

  • Epoch Time: The time on the server represented as epoch (Unix) time

  • Localized Time

  • Test Time: Time lapsed (HH:mm:ss.SSS) from start of metrics collection.

  • CPU (%): CPU consumed by the app during the test run.

  • Memory (KB): Memory consumed by the app during the test run.

  • Free Memory (KB): The amount of free memory on the device, during the test run.

  • Thermal State (iOS 1-4, Android 0-6): Supported on iOS and on Android 10 and later. For more details on the four thermal states for iOS devices, see the Apple Developer documentation. For more details on the six thermal states for Android devices, see the Android documentation.

  • Free Disk Space (KB)

    • WiFi

      • State (0/1): Disconnected or connected.

      • Signal Strength: Scale of 1-5.

        For details on which settings to enable to collect WiFi metrics for Android, see Connect Android mobile devices.

        iOS: SSID is not supported.

Back to top

See also: