Digital Lab Appium Capabilities

The Digital Lab integration extends the standard Appium capabilities. This topic provides information about several common capabilities.

Note: **When using Appium Inspector v1.22, the prefix "uftm" needs to be added to several Appium capabilities.

Example: For userName, use uftm:userName.

Appium/Digital Lab capability Required Requires uftm prefix** Comments
oauthClientId/
userName
*  

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

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

* If your administrator allowed anonymous logins for Appium scripts, you can leave out the oauthClientId/ userName and oauthClientSecret/ password capabilities. Administrators can enable anonymous access in the General section of the Administration Settings screen.

oauthClientSecret/ password * * See comments by oauthClientId/ userName.
tenantId

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 Digital Lab shared space. The default shared space ID is 999999999.

app --  

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

appiumVersion Defines the Appium major version to use for your test. The default is Appium version 1. To use Appium version 2 set this capability to v2.x.
For code samples of switching between Appium versions, see multi-Appium support in the Digital Lab github repository.
appPackage (Android)  

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, Digital Lab checks to see if the app exists in the database. If it exists, it installs it automatically before running the test steps.

appActivity (Android)  

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, Digital Lab checks to see if the app exists in the database. If it exists, it installs it automatically before running the test steps.

bundleId (iOS)  

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

If the app is not already installed on the device, Digital Lab checks to see if the app exists in the database. If it exists, it installs it automatically before running the test steps.

installPackagedApp Install 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

"PrivateOnPremise", "Public", or "PrivateHosting"

deviceType

  "real" or "emulator"
platformName   "Android" or "iOS"
platformVersion  

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

For example, "platformVersion", ">5.0.1"

deviceName  

The physical or emulated device name. You can specify a manufacturer, model, or logical name as it appears in Digital 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.)
udid  

The UDID identifier of the device as assigned by Digital 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.

browserName *  

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.

source

The source lab/s for the device:

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

  • For ADF devices, use AWS.

automationName  

iOS

Digital Lab enables you to run tests on iOS devices without requiring a Mac machine. The default automation method used for iOS is XCUITest.

If you explicitly want to use UIA automation, set the automationName to uiAutomation. This capability is only available for iOS versions 9.3 through 11.1. In iOS versions higher than 11.1, the capability is not supported and all tests use XCUITest.

Android OS 5.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".

 

Android OS < 5.0

UiAutomator1 ("android") is the default for Android OS < 5.0. You can only use UiAutomator1 as the automation engine.

mcWorkspaceName

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

fullReset  

Uninstall the app before and after the test. When using this capability, Digital Lab uninstalls the app before the test, install the app for testing, and then uninstall the app 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.

noReset   When using this capability, Digital Lab installs the app for testing on the device only if is not already installed.
Supported only when using the bundleID (iOS) or appPackage with appActivity (Android) capabilities.

Back to top

See also: