Supported Appium capabilities

SRF's support for Appium is powered by Mobile Center, which extends the standard Appium capabilities.

Appium capability extension

The following table describes how the SRF support for Appium extends the standard Appium capabilities.

Appium/MC capability Required Comments
appPackage (Android)

The package name that identifies the app, displayed as Package ID in the app details card.

For examples, see Sample screens.

If the app is not already installed on the device, StormRunner Functional 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. See the image below this table for an example.

If the app is not already installed on the device, StormRunner Functional 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.hpe.advantage", or see Sample screens below.

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

deviceHostingType

"PrivateOnPremise", "Public", or "PrivateHosting"
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.

For examples, see Sample screens.

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)\"" will look 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 MC. See the image below this table for an example.

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 a web application on a browser, for example, "browserName", "safari".

automationName

The standard Appium behavior for automation is to use XCUITest for iOS versions 9.3 and higher. For iOS versions 9.3 - 11.0.3, if you explicitly wish to use UI Automation, use the capability automationName: “UIAutomation”

XCUITest always requires a Mac Connector. UIAutomation does not require a Mac connector. SRF enables you to run an Appium test with a non-Mac connector on iOS versions versions 9.3 - 11.0.3, by setting the “automationName” capability to ”uiautomation”. Note that iOS versions lower than 9.3 are not supported.

Back to top

Sample screens

The following sample App Details box (opened by clicking the More button on the App card) shows the Package ID and Launch activity for an Android app.

The following sample device card shows the deviceName (which can be represented as the logical, manufacturer, or model name) and udid for an Android device.

Back to top

See also: