Known Issues - Mobile Add-in

This topic contains troubleshooting and limitation information about working with the Mobile Add-in.

Getting started

Using Proxy servers

  • Only proxy servers that support the WebSocket protocol are supported. For Apache servers, use version 2.4 or later.

  • Basic authentication must be permitted on the port used by the proxy server.

    Apache configuration example:

    ###forward basic authentication###
    ProxyRequests on
    AllowCONNECT 8108 8080 80 7002 443 8443
  • If the Camera or Video Simulation windows do not display the media files for sensor simulation steps when uploading media files from a URL, make sure to set the proxy settings in the Digital Lab pane of the Options dialog in OpenText Functional Testing (Tools > Options > GUI Testing tab > Digital Lab node).

Connecting to OpenText Functional Testing Lab

If either your OpenText Functional Testing or OpenText Functional Testing Lab sessions are invalid, due to license issues or timeout from the OpenText Functional Testing Lab server, when clicking Test Connection in the Digital Lab pane of the Options dialog, OpenText Functional Testing gives you an operation timeout.

Workaround: Exit from OpenText Functional Testing and OpenText Functional Testing Lab as necessary and make sure your licenses are correctly installed for the correct products. Then reconnect to OpenText Functional Testing and OpenText Functional Testing Lab.

Multiple OpenText Functional Testing Lab workspaces

The following known issues exist for selecting mobile apps and working with multiple workspaces:

  • Selecting a specific app upload number is not supported from the OpenText Functional Testing Record and Run Settings dialog. Select the app and upload counter from the OpenText Functional Testing Lab wizard instead.

  • If the same app is uploaded to the shared assets, and also to another workspace, selecting the latest app upload version in the Record and Run Settings dialog will use the latest version between them, tagged with its workspace name.

  • If the same app is uploaded to multiple workspaces, and OpenText Functional Testing does not specify a workspace or an app upload number, it will use the latest upload number of the app in any workspace on the system.

Back to top

General

Text recognition

  • OpenText Functional Testing text recognition for mobile devices does not support the Tesseract OCR text recognition engine.

  • OCR is supported only with image quality set to 100%.

Wildcards

If you use wildcards in your WebUtil.LaunchBrowser steps to perform a fuzzy search for devices, you must also provide an operating system.

For example, the following step may generate errors:

WebUtil.LaunchBrowser "MOBILE_SAFARI","iPhone","",""

Prevent errors by providing an operating system. For example:

WebUtil.LaunchBrowser "MOBILE_SAFARI","iPhone","","iOS"

Sensor simulation operations

  • Uploading media files using drag and drop actions into a SimulateCamera or SimulateVideo operation is not supported.

  • If the specified files required for the SimulateCamera or SimulateVideo methods are not correct in the test steps, the remote access window gives no indication of the operation being performed successfully or the failure or success of the step.

    Workaround: View the step details in the test results.

Localization

Commas as decimal points

Your localized operating system may use commas as decimal points. This is not supported by OpenText Functional Testing, and you may need to manually fix recorded steps to use periods as decimal points instead.

It is recommended to always use the period character as a decimal point, regardless of the locale of your operating system.

Suggested characters

Steps that include Japanese/Chinese characters that were added from the suggested characters line above the keyboard may not run correctly.

Amazon Web Services (AWS)

The following known issues exist when using OpenText Functional Testing Lab with OpenText Functional Testing on AWS:

  • Multiple devices are not supported in a single test running on AWS.
  • Running business process tests of Web applications on mobile devices is not supported for devices on Amazon Web services.

Back to top

Spying and highlighting on mobile apps

  • When using the Object Spy, hovering over an object when using the Object Spy to view object properties is not supported. Click the object instead to view the properties.

  • On slow websites, the first Spy action displays 'device:device' on low-performing devices.

    Workaround: Increase the 'MAX_JS_ENGINE_READY_CHECK_RETRIES' to 300 in connector.properties, and increase timeout duration for OpenText Functional Testing to 1 min.

  • For native browsers and the Functional Testing Lab for Mobile and Web Browser: When using the Object Spy on the web objects: Back, Forward, Refresh, and URL box, Device.app.xx is generated instead of Browser.page.xx.

    Workaround: Modify the code manually.

  • Highlighting on Browser test objects shows some location deviation, using both the Functional Testing Lab for Mobile and Web Browser and native browsers.
  • When highlighting an object from the object repository, any non-default identification properties with incorrect values are ignored. This enables highlighting the control in the application.

  • A test object might not be highlighted in the object repository in the following scenarios:

    Scenario Workaround
    This is the first editing session after installation. Define the relevant device and application in the Mobile tab of the Record and Run Settings dialog box. Then start and stop a recording session.
    This is the first editing session after restoring factory defaults in the Options dialog box. Define the relevant device and application in the Mobile tab of the Record and Run Settings dialog box. Then start and stop a recording session.
    The Mobile tab of the Record and Run Settings dialog box is empty, and no device or application is selected. Define the relevant device and application in the Mobile tab of the Record and Run Settings dialog box. Then start and stop a recording session.
    The remote access window displays a different device than the one defined in the Mobile tab of the Record and Run Settings dialog box.

    Do one of the following:

    • Define the relevant device and application in the Mobile tab of the Record and Run Settings dialog box. Then start and stop a recording session.

    • Set the id property in the Device test object description to the value of the device that is open in the remote access window.

  • If an object's description properties contain a space at the beginning or end of the property name, the object cannot be highlighted.

    Workaround: Do one of the following:

    • Remove this property from the object description in the Object Repository.

    • Add a regular expression for the property ".*"

  • When working with Web tests, spying is not supported on iOS devices in non-mobile optimization pages.

  • Recording and highlighting on certificate related dialogs (from a Web page in a Mobile Web application) is not supported.

    Workaround: Add a step using descriptive programming to identify and perform user actions on the certificate dialogs in the test.

    In addition, you need to manually install the needed certificate on the device running the test before running the test.

Back to top

Recording on mobile devices

MobileViewobject

The MobileView object is not recorded on Android apps.

Instead, you can create it manually in the object repository and set the properties as follows:

  • Set the isscrollable property to true.
  • Set the mcindex property.
  • Set the class property according to the actual type of scrollable control. (You can use the Object Spy to verify the class.)
  • Remove all other properties (remove the properties—do not leave them blank).
MobileList object

When recording on packaged apps, some spinner select events are recorded without the user tapping and selecting something on spinner. The test cannot run these steps.

Workaround: Manually remove the extra steps from the script.

Scrolling

Scroll and horizontal scroll operations on Android are not recorded.

Bitmap checkpoints

When recording on iOS and the native browser, bitmap checkpoints placed after scrolling down to the next page in the browser, will always fail when playing the test.

Workaround: After recording, update the tolerance for the bitmap checkpoint to a value between 5% and 10%.

Back to top

Running tests with OpenText Functional Testing Lab

This section includes the following issues:

Parallel testing. For additional known issues with parallel testing, see Running tests in parallel.

Selecting devices and launching browsers

To avoid errors, ensure that the methods used to lock your device and launch a browser on the same device are consistent between your Record and Run Settings and your test steps.

Record and Run Settings Test Step Method
Specific device selected Use the same device ID in your test step with the LaunchMobileBrowserWithID method.
Device capabilities defined to lock any matching device Use the same device capability parameters in your test step with the LaunchBrowser method.

For more details, see the LaunchBrowser and LaunchMobileBrowserWithID method documentation in the OpenText Functional Testing Object Model Reference.

Switching between the Device Capabilities and Specific Device tabs

Sometimes, when configuring the Record and Run Settings in OpenText Functional Testing, if you switch between the Device Capabilities and the Specific Device tab, and then click the Open in Digital Lab button to open the OpenText Functional Testing Lab wizard, the wizard opens the Device capabilities tab.

Workaround: Do one of the following:

  • With the specific device tab open, click OK to close the Record and Run Settings tab. Then open the Record and Run Settings dialog box again and click the Open in Digital Lab button to open the OpenText Functional Testing Lab tab.

  • Select the specific device from the Specific device tab in the Record and Run Settings dialog box

Multiple devices in test runs

Unexpected issues may occur when you are running a test with a MobileWebView test object on multiple devices.

If so, remove the accessibilityid description property from the test object and run the test again.

Device filtering in test runs: Testing multiple devices

If you have multiple steps in your test that use the same device filtering criteria defined by description properties, and also have multiple devices connected to OpenText Functional Testing Lab that match the filtering criteria, all relevant steps use the same device used by the first step in your test.

To use a different device in a specific step, modify the filter for that step.

Device filtering in test runs: Modifying your filter

If your device filter is defined by description properties, and you modify those properties before running the test a second time, the device remains locked from the first run, and the second test run will fail.

Unlock the device in OpenText Functional Testing Lab before running the test a second time.

Device filtering in test runs: Multiple steps with different device filters

If your test has separate steps with different device filters for each step, where the device filters do not conflict (the same device matches each filter), and:

  • You have multiple matching devices connected. A different device is selected for each step.
  • You have only one matching device connected. The test fails the second time the device is selected.

To use the same device, modify the filter so that the properties match in all relevant steps.

For example, if you have a single device connected that matches the filters in both of the following steps, the test will fail on the second step.

Device("osversion:=8.4","ostype:=iOS").App("name:=MC Browser","identifier:=com.hp.HPMobileWebBrowserINJ").MobileEdit("nativeclass:=UITextField","mcindex:=0","ispassword:=False","class:=Input","accessibilityid:=url").Set "AAA"
Device("ostype:=iOS").App("name:=MC Browser","identifier:=com.hp.HPMobileWebBrowserINJ").MobileEdit("nativeclass:=UITextField","mcindex:=0","ispassword:=False","class:=Input","accessibilityid:=url").Set "BBB"

Modify the steps as follows to run the test:

Device("ostype:=iOS").App("name:=MC Browser","identifier:=com.hp.HPMobileWebBrowserINJ").MobileEdit("nativeclass:=UITextField","mcindex:=0","ispassword:=False","class:=Input","accessibilityid:=url").Set "AAA"
Device("ostype:=iOS").App("name:=MC Browser","identifier:=com.hp.HPMobileWebBrowserINJ").MobileEdit("nativeclass:=UITextField","mcindex:=0","ispassword:=False","class:=Input","accessibilityid:=url").Set "BBB"

Run results

Browser steps

Device information is not included in the HTML run results for Browser steps run on specific devices.

Local system monitoring If both Device Metrics and Local System Monitor are enabled for your test or component, the run results show mobile device metrics only.

Device logs

If you start recording with the Logs option cleared in the Device Metrics and then stop recording, but resume recording with the option selected, the Download device logs button (in the device Options pane) is not available.

Workaround: Press the Refresh button in the remote access window.

Visual Relation Identifier steps

If the first step in your test uses Visual Relation Identifiers (VRI) to identify an object, your app is not launched, installed, or restarted, even if defined to do so otherwise.

Workaround: Ensure that your app is launched, installed, or restarted before using VRI to identify a test object.

Fingerprint simulations

Step results for failed fingerprint simulations may show differently, depending on the app's configured behavior.

Back to top

Web testing

Native browsers on mobile devices

Test object description properties

Native browsers, including Chrome on Android and Safari on iOS, do not relate to test object description properties.

Therefore, data driving on native browsers relates to data defined in the Data table or test parameters only, and will not search for test objects with matching test object property values.

WebAudio / Web Video objects
  • When running a test on a Chrome browser, ensure that you deselect the Chrome setting Gesture requirement for media playback before running tests containing WebVideo and WebAudio objects.
  • The .Play method is not supported for WebVideo and WebAudio objects on iOS devices.

Define an initial URL

Test runs may fail if the same script is run multiple times without an initial URL to start the test with.

To avoid errors, define a URL for your test in the Record and Run Settings dialog.

iframe objects

You cannot record on iframe objects in iOS devices when the code of objects inside the iframe use document.write().

Bitmap checkpoints

On iOS native browsers, bitmap checkpoints inserted while recording, and after having scrolled to a following page, are not supported. Such checkpoints will fail.

Using the Functional Testing Lab for Mobile and Web Browser app

Run Results Viewer

When tests are run on the Functional Testing Lab for Mobile and Web Browser app, CSS elements may be displayed erroneously in the Captured Data pane of the Run Results Viewer (not relevant for HTML report).

Network virtualization and the lab's browser app

When using Network Virtualization and testing the Mobile Web app without enabling mobile testing on the Mobile tab of the Record and Run Settings dialog box, you must add the device ID in the object repository, or use descriptive programming to identify a device.

This limitation does not apply when testing is enabled on the Mobile tab.

Running Web tests using the lab's browser app
  • Ensure that the Functional Testing Lab for Mobile and Web Browser app is installed on the test's devices before running the test.
  • Some Browser methods are not supported.

    Test steps that include unsupported commands are skipped, and do not cause the test to fail. Instead, relevant warnings are displayed in the run results.

    Unsupported methods include:

    • .ClearCache
    • .Close
    • .CloseAllTabs
    • .DeleteCookies
    • .DialogExists
    • .FullScreen
    • .GetDialogText
    • HandleDialog
    • .Home
    • .IsSiblingTab
    • .OpenNewTab

Using the Chrome emulator on OpenText Functional Testing Lab

Multiple tabs

Multiple tabs are not supported, as well as the Browser.OpenNewTab and Browser.CloseAllTabs methods.

Unsupported methods may cause unexpected behavior when run in the emulator.

Object Spy

The Object Spy and Highlight in Application (from the Object Spy) are not supported for the emulator.

Test objects added while recording using the emulator cannot later be highlighted from the object repository.

Checkpoints and output values

Checkpoints and output values cannot be added during recording and must be added manually when editing test steps.

Maintenance mode

Maintenance mode is not supported.

Test objects
  • The WebFile object is not supported.
  • Adding objects from the object repository is not supported.

Shadow Dom support

Running mobile tests on Shadow Dom web apps and iOS devices is only supported for:

  • iOS versions 11 and higher
  • Android with Chrome versions 56 and higher

Back to top

ALM and BPT

Working with ALM and OpenText Functional Testing Lab

Asset Comparison tool

The Asset Comparison tool does not compare changes in the Record and Run Settings for Mobile tests.

Test object icons

Test object icons for Mobile objects are not displayed in the Test Plan module or for object repositories saved in ALM.

Business Process Testing and OpenText Functional Testing Lab

  • Using the Capture toolbar is not supported.

  • When recording a business process test, if you press the Stop button when recording, you cannot start recording again.

  • If you started the Mobile Web app from the HOME screen and started recording, operations performed on the page are recorded when no recorded steps are expected.

    The steps are recording using the following syntax:

    Browser(XXX).Navigate "XXX"

  • Creating multiple application areas one right after another with settings defined on the Web or Mobile tabs retains the information from the earlier application area. Clear these settings to define your subsequent application area details from scratch.

  • BPT does not support multiple application areas in a single test or flow.

    For example:

    Add the following components to your test or flow, each with a separate application area defined:

    Component 1 /

    Application area 1

    iOS device

    AMB app

    Component 2 /

    Application area 2

    Android device

    UiCatalog app

    During your test run, the correct app to install on your second device, the Android, cannot be found.

Back to top

Specific types of apps

Working with native apps

Steps cannot be recorded or run on native mobile controls, such as a native date picker, when working in a native browser or the Functional Testing Lab for Mobile and Web Browser.

Workaround: Add the native mobile control to the object repository manually, and then manually add a step to operate the control.

For example:

  1. Spy on a date picker control, and add the corresponding WebEdit object to the Object Repository.

  2. Then add a step similar to the following to your test:

    Browser("Reservations").Page("Your Reservation").WebEdit("check-in-date").Click

Flutter-based apps

Tests can be recorded and run on packaged Android and iOS apps built using the Google Flutter SDK. The following object types are supported: MobileButton, MobileCheckBox, MobileEdit, MobileLabelMobileObject,MobileTabStrip.

For details on the supported Flutter SDK version, and guidelines for preparing and uploading Flutter apps see the OpenText Functional Testing Lab Help Center.

The following methods are not supported for flutter-based applications: SetSecure, Select, ChildObjects, MobileEdit.Set, MobileLabel.Set, MobileObject.SetFocus.

iOS, native, packaged apps and the ChildObjects method

If a ChildObject step is run on an iOS, native, packaged app (Device().App().MobileObject().childobjects()), and the MobileObject is not found, the step returns all childobjects on the current page being tested.

Working with hybrid apps

The following features are not supported when testing hybrid applications:

  • Accessibility checkpoints
  • Mobile optimization

    The following are supported only for web pages that are optimized for mobile:

    • Bitmap checkpoints
    • Text area checkpoints and output values
  • Active Screen
  • Navigate and Learn
  • Customization of object identification properties in the Object Identification dialog box
  • Tests and components recorded on a desktop browser
  • Web file and frameset objects

Certain hybrid apps may issue an error "This test was created using an earlier version of UFT and therefore requires a different JavaScript engine".

This can happen if the app is launched by another app or from HOME.

Workaround: Have the app launched by the testing tool. Stop the recording, restart the app, but do not reinstall. Begin recording again. Alternatively you can use this Javascript code:

Device("<Device>").App("<appname>").Launch DoNotInstall,Restart

Note: Some features not supported for mobile in general are supported when working with hybrid applications. For details, see Unsupported features, test objects, and methods.

Additional limitations:

Keyword View

In the Keyword View, you may not be able to use the Insert run-time object option in the Select Test Object dialog box to insert a .Object statement for a selected test object.

Workaround: Enter the .Object statement manually.

Text checkpoint and output value steps

When recording and running text checkpoint and output value steps, the test object must be fully visible in the remote access window.

WebList steps

Sometimes, when recording a WebList test object step, steps are added for both MobileDropDown and WebList test objects.

This may cause the MobileDropDown step to fail. To avoid this, delete the extra MobileDropDown step.

Recording date and time

Sometimes, when recording the date and time on MobileWeb test objects, native application steps are added in addition to hybrid application steps. This may cause the step to fail during a run session.

Workaround: Delete the extra native application steps.

Run results

CSS elements may be displayed erroneously in the Captured Data pane of the Run Results Viewer (not relevant for HTML report).

Using the Spy If your application does not have a view port defined for the application, if you scroll the page in your application, the area that the Object Spy highlights is offset.

Working with non-packaged apps

Mobile Stepper test objects

The Mobile Stepper test object is not supported for non-packaged apps on iOS devices.

On Android devices, these objects are recognized as MobileButton or MobileLabel objects.

MobileList.Delete method

The MobileList.Delete method is not supported for non-packaged apps.

Instead, swipe left on the list item and tap the Delete button to perform this step.

MobileDropdown.Select method Replay is not supported for the MobileDropdown.Select method on non-packaged apps.
ChildObjects method

The Container property is not supported for non-packaged apps on iOS.

The NativeClass and hint properties are not supported for non-packaged apps on Android.

Required object description filter When testing non-packaged apps using the ChildObjects method, you must add a filter to the object description before the ChildObjects step. For example, see Object description filter - example.
Standard checkpoints, iOS devices

Existing tests with standard checkpoints may fail if the following properties are included in the checkpoint properties:

  • isFocused
  • isChecked
  • isFocusable
  • isCheckable

If you have these properties in tests created before UFT 14.02, and are running your test on iOS non-packaged apps, avoid errors as follows:

Update your test to include a Boolean value (True/False) for these properties instead of a Null value.

Object description filter - example

Set oDesc = Description.Create()
	oDesc("class").Value = "Button"

Set Buttons = Device("Device").App("UICatalog_2").ChildObjects(oDesc)
               
NumberOfButtons = Labels.Count()

For i = 0 To NumberOfButtons - 1
	Buttons(i).Tap
Next	

Testing SAP Fiori apps with OpenText Functional Testing Lab

If your test was created for a desktop version of a Fiori application, you may need to modify the test to ensure it runs correctly on the mobile version.

Additionally, different resolutions on different devices may cause differences in an object's properties and behavior. You may need to manually edit the test script to support multiple devices.

The following versions of the Microsoft Edge browser are supported:

  • SAP Fiori: version 1.44 and 1.52 (Replay only)
  • SAPUI5: version 1.44 (Replay only)

Tip: Add an Exist statement to ensure that an object is completely loaded on a page in a Fiori mobile application before running steps on that object.

Specific SAP objects and methods

SAPUIRadioGroup

The SAPUIRadioGroup test object is not supported for Fiori applications.

SAPUITextEdit / SAPUIButton

Sometimes, when using SAPUITextEdit and SAPUIButton objects, the test steps are recorded in the incorrect order.

If this happens, change the order of the steps manually.

SAPUITextEdit

The SAPUITextEdit test object html tag identification property now uses the parent DIV element (instead of the INPUT element).

You must update any:

  • Tests that include checkpoints, output values or GetROProperty("html tag") steps on the SAPUITextEdit test object.
  • SAPUITextEdit objects you have in your object repositories.

SAPUIDialog.Close

The SAPUIDialog.Close button works only when a dialog contains a X close button.

Standard checkpoints and output values in SAP Fiori apps

When inserting standard checkpoints and output values to an already recorded test, and running standard checkpoint and output value steps on Fiori mobile applications, the test object must be fully visible in the OpenText Functional Testing Lab remote access window.

This is relevant when editing the test, and not when recording it.

Fiori 1.6x client freezes

The remote access display does not support apps using the Android FLAG_SECURE window flag. For details, see WindowManager.LayoutParams in the Android Developers documentation. To use such apps with OpenText Functional Testing Lab you need to remove the flag. See the OpenText Functional Testing Lab help for details.

Back to top

Unsupported features, test objects, and methods

The OpenText Functional Testing Mobile Add-in only supports recording and running steps on mobile applications.

When working with mobile objects, the following functionalities are not supported, or are only partially supported:

  • Active Screen.

  • Assistive properties in the Object Identification dialog box.

  • Device.SetOrientation method: Only the LandscapeRight and Portrait parameters are supported.

  • Exist property for Mobile objects, when the object is not found, and the customer uses a default timeout value, or timeout value greater than 30 seconds (applicable to UFT 14.01 and earlier).

    Workaround: Add a timeout value of less than 30 seconds. For example:

    Device("Device").App("UICatalog").MobileList("list").Exist(3)
  • Insight is supported only with image quality set to 100%.

    If you find that Insight does not work correctly even under these conditions, try using AI-based testing for your mobile application instead. See AI-based testing.

  • LaunchBrowser. Although only the Browser argument is required, to prevent errors, you must define at least one other argument for this method. For details, see the LaunchBrowser documentation in the OpenText Functional Testing Help Center Object Model Reference.

  • Local System Monitors. Instead, you can instruct OpenText Functional Testing to collect Mobile vitals in the Record and Run Settings dialog box. This data is then presented in the Local System Monitor pane in the run results.

  • Low-level recording

  • Maintenance Run Mode. Supported for hybrid applications only.

  • To add a Set method to a MobileCalendar step (MobileStepper.Set), you must do so manually in the Editor.
  • Tapping on a MobileStepper object (a MobileStepper.Tap method)

  • Navigate and Learn, including adding children of a parent test object to the object repository.

  • Recovery scenarios: The following trigger events and recovery operations are not supported for mobile:

    Trigger events

    Popup window

    Object state

    Application crash

    Recovery operations

    Keyboard or mouse operation > click button with label

    Close application process

  • Simulation methods methods are not supported as the first step in a script, including the SetFingerprintSimulation, SimulteCamera, SimulateFingerprint, and SimulateVideo methods. To avoid errors, manually add a Launch step before any of these steps.

  • Smart identification. Supported for hybrid applications only.

  • Update Run Mode. Only the option for updating checkpoints and output values is supported. Supported for hybrid applications only.

  • Virtual objects

  • Visual Relations Identifiers (VRI) with multiple remote windows opened, or in Web tests on hybrid apps.

  • WebVideo and WebAudio.Play

Back to top