Known Issues - Editing GUI tests

Relevant for: GUI tests and components

This topic describes known issues when editing GUI tests.

Spying

Hover mode in the Object Spy

Compare The Object Spy's Compare functionality turns off Hover mode. This means that if you spy using Hover mode, and then click Compare, you must spy on your second object by clicking.
Cancel

Canceling spying when in Hover mode is not supported.

Keep on Top

Keep on Top is not supported for the Object Spy in Hover mode.

Logical name definition Logical name definition, defined in the Object Identification Dialog Box, is not used when spying in hover mode.

Object Identification Center only

Check your zoom level

When using Internet Explorer, IE mode in Edge, or when working with JavaFX controls: 

If OpenText Functional Testing doesn't recognize objects in the correct location, check to see that you are viewing the page at 100%, and are not zooming in or out.

For example, if you view the page at 90% or 120%, you may be required to click or select an area to the left or the right of the actual object in order to recognize it.

Insight & Text test objects The OIC does not support Insight & Text test objects.
Validate
  • Validate does not work properly when multiple SAPGUI objects match the description.

  • Validate is not supported on UIA Pro objects.

Hover mode

Objects spied in Hover mode cannot be added to object repositories or test editor with correct hierarchies and properties.

Workaround: Use the normal mode in the OIC or use the Object Spy.

Remote Object Spy

When using the Remote Object Spy in the OIC, the following issues are known:

  • Hover mode is not supported when you use the Remote Object Spy in the OIC.

  • AI Auto Inspection is not supported in the Remote Object Spy mode.

  • Sometimes, the OIC fails to add an object to an object repository if you try to add the object some time after you spied it.

    Workaround: Spy on the object again and add the object to the object repository immediately after spying.

AI objects in a multi-object spy session In multi-object spy mode, the same AI object suggestion is displayed in the OIC Edit view for all objects. This is the AI object for the last object you spied.
When working in a non-English OpenText Functional Testing installation

Certain UI elements in the Object Identification Center pane are hard-coded in English and not translated.

Object Spy or Object Identification Center

AI Object Inspection / Highlight

If a status bar exists at the bottom of Firebox browser, when you use AI Object Inspection or Highlight function in Object Spy or OIC, OpenText Functional Testing may be unable to get the correct positions of test objects.

Cannot spy by tapping OpenText Functional Testing supports spying on web-based applications only when using a mouse.

Spy on SAP applications

You may experience the following issue when you are using the latest extension available in the Chrome store or in <Installdir>\Installations\Chrome\v3 folder:

The Object Spy or OIC fails to highlight or add an object to an object repository if you try to do that some time after you spied it.

How can I tell if I am using the relevant extension: Navigate to the chrome://extensions/ page and click Details on the extension you installed. The Inspect views of the extension are service worker.

Workaround: Spy on the object again and perform the operation immediately after spying

Back to top

AI object identification

AI Object Inspection window

In some cases, when using AI Object Inspection to inspect a web application on Internet Explorer, OpenText Functional Testing sees the application as an empty black page.

Workaround: 

Wait until the web page is fully loaded and click REFRESH on the AI Object Inspection window.

Text recognition When the cursor is displayed in or near a text string, the text may not be identified properly by the AI Object-Detection OCR. Consider adding steps to your test that place the cursor elsewhere before trying to identify or verify text using AI.
Dual monitors

AI-based object identification is supported only on the primary monitor. Therefore, if you are using AI Object Detection when working with dual monitors, make sure that both the AI windows and your application are visible on the primary monitor.

This is relevant when inspecting applications, recording flows and running tests.

SAP GUI for Windows application

In some cases, the AI Object Inspection window reports an error when you turn on the Containers switch to inspect tables on an SAP GUI application page.

Possible cause:

The session for the AI Object Inspection window to get the object identification result times out.

Workaround:

  • Make sure that you are using the default AI OCR.

  • Add the following line to the %LocalAppData%\Learn Tool\Preferences\LearnToolSettings.json file:

    "commandTimeout": value

    Set the timeout period to a value larger than 60000 ms (default value).

Back to top

Recording

Description properties OpenText Functional Testing does not record the visual relation identifier property.

This property can be added only manually from the Object Properties dialog box or the Object Repository Manager or window.

Start menu / Quick Launch panel
  • OpenText Functional Testing does not record launching Windows Help from the Start menu.

  • To record Start menu items customized as menus, customize them as links instead, or record their activation in some other way.

Limited access to application objects

OpenText Functional Testing cannot record or run steps if it has limited access to the processes of the application you are testing.

Workaround:

  • Make sure that the application you are testing is started by the same Windows user as OpenText Functional Testing.

  • Make sure that neither you nor the tested application actively prevent OpenText Functional Testing from accessing the application's processes.

Changes in the application during a recording session

When the title of a window changes during recording, OpenText Functional Testing may fail to recognize objects within that window while running the test or component.

Workaround: Remove the text property from the window's test object description in the Object Repository window.

Recording Insight objects

During an Insight recording session, if you perform an operation that moves the application window, an unexpected parent object is recorded. The parent object used in the step is the object located at the clicked location after the operation was performed.

Example: If you record a Minimize operation on a Calculator application, the Calculator closes and the step is recorded with the Desktop window as the parent:

Window("calculator").InsightObject("").Click
Window("calculator").InsightObject("").Click
Window("calculator").InsightObject("").Click
Window("Program Manager").InsightObject("").Click

Workaround: The recorded step still runs successfully if its image is unique within the parent object. Otherwise, you can manually move the object under the correct parent in the object repository and adjust the step.

Recording Insight objects on a remote Windows 10 or 11 machine

When you start an Insight recording session on a remote Windows 10 or 11 machine, your mouse cursor may jump around on the application screen.

Workaround:

  1. Launch gpedit.msc with administrative privileges.
  2. In the Local Group Policy Editor, navigate to the path below and set the Policy Use WDDW graphics display driver for Remote Desktop Connections to Disabled:

    Local Computer Policy -> Computer Configuration -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Remote Session Environment

Recording the next Insight object

In some applications, after you performed an operation that opens a window and successfully recorded an Insight object, the window immediately closes when you continue to record another Insight object on the window.

Workaround: After you finish recording the first Insight object, add the skipmakeobjvisible property for the object in the object repository and set the value to True.

Recording AI objects

In an AI object recording session, combo boxes may not be correctly recorded.

Workaround: Use AI Object Inspection.

Back to top

Actions

Test names in actions

If a test contains a call to an action stored in another test, and that other test was renamed in ALM, the original test name still appears (in square brackets) in the canvas.

The obsolete name in the canvas does not affect OpenText Functional Testing's ability to locate and run the action.

If it is important to display the correct test name, delete the action call from the test and reinsert it.

Nested actions

You cannot add a new action as a nested action to an external action.

Instead, open the external action and add the call to the nested action directly.

Copies of tests

If you make a copy of an existing test, you cannot insert call to parallel actions in both tests from the same test.

Instead of copying the test, use Save As to create a duplicate of the test.

Back to top

Keyword View

Object properties

If you use the Object property in a step in the Keyword View, it may take a long time to retrieve the object information from the application.

This may affect response time when you open and select from the various drop-down lists in the step.

If this occurs, use the Editor when working with the Object property.

Calls to other actions

If you insert a call to another action, you cannot expand the action node to view the steps in the called action.

Instead, double-click the called action node to open the action steps in another tab.

String to Integer

When a parameter is defined as Variant, the Keyword View sometimes inserts the value as a String.

To provide an Integer parameter, manually remove the quotes from the value after the step is created.

In some cases, this is mandatory, for example for the row parameter of DevExpress Data Grids.

For details on required parameter types, see the Object Model Reference for GUI Testing.

AI-based testing steps

The Keyword View displays AI object steps and you can modify their operations and values.

However, the Step Generator is not supported for AI objects, nor are AI objects stored in the object repository. Therefore, we recommend creating AI object steps using AI Object Inspection or AI Object Record, and not from within the Keyword View. See AI-based testing and Record an AI-based test.

Back to top

Recovery scenarios

If you specify multiple function libraries from different locations with the same name in the same recovery scenario, only the first function library is used.

Workaround: Rename the function libraries so that each function library has a unique name.

Back to top

Object repositories

  • If you modify the name of a test object in the Object Repository while your test or component script contains a syntax error, the new name is not updated correctly within your test or component steps.

    Workaround: Clear the Automatically update test and component steps when you rename test objects checkbox (Tools > Options > GUI Testing tab > General node) and perform the renames in the steps manually (recommended) or solve the syntax error, and then close and reopen the document in OpenText Functional Testing to display the renamed objects in your steps.

  • For actions: If you use the Export and Replace Local Objects option for an object repository that contains action parameters, the created repository parameters are mapped to test parameters instead of action parameters.

    Workaround: Manually adjust the mapping in the exported object repository.

  • You can add a test object to the local object repository only if that test object does not exist in a shared object repository that is associated with the action or component. If a test object already exists in an associated shared object repository, you can add it to the local object repository using the Copy to Local option. For details, see Local copies of objects in shared object repositories .

  • You cannot add WinMenu objects directly to an object repository using the Add Objects to Local button in the Object Repository window or the Add Objects button in the Object Repository Manager. To add a WinMenu object to the object repository, use the Add Objects or Add Objects to Local button to add its parent object and then select to add the parent object together with its descendants, or record a step on a WinMenu object and then delete the recorded step.

Back to top

Checkpoints and output values

Accessibility checkpoints

In ALM, you can view a comparison of accessibility checkpoints in the Asset Comparison Tool only if both OpenText Functional Testing and the UFT One Add-in for ALM are installed on the ALM computer.

Bitmap checkpoints

Bitmap checkpoints on objects containing text may fail if you create them using a Remote Desktop Connection and then run them locally, or if you create them locally and then run the checkpoint steps using a Remote Desktop Connection. In the run results, the image displayed when you click View Difference in the bitmap checkpoint results shows some text shapes.

Workaround: Enable the Font smoothing option in the Remote Desktop Connection application.

Database checkpoints
  • The format of captured values varies depending on the specific system settings. For example, date and time values may be set to different formats.

    Workaround: If you are running the test or scripted component on a different system than the one you used to record the test, confirm that the systems use the same format settings.

  • When you create a database checkpoint on one machine and try to run it on different machine, you should have the same ODBC driver installed on both machines.
  • In the Database Query Wizard, you cannot select Microsoft Query to create database checkpoints or output values if Power Query is installed on your computer. Instead, select the Specify SQL statement manually option.
File Content checkpoints
  • File content checkpoints for htm/html files generated dynamically by third-party JavaScript code are not supported.

  • When creating File Content checkpoints, OpenText Functional Testing gathers information from the application under test. This can sometimes take up to two minutes.

File Content output values When creating File Content output values, using spaces in a Data table parameter names is not supported.
XML checkpoints
  • When running an XML checkpoint on an XML file that contains > as a value, an error message may occur.

  • When you add a new value node to an XML node, in some cases the new value may not be displayed.

    Workaround: Close the Edit XML as Text dialog box and reopen it to display the new value node correctly.

  • When inserting an XML file checkpoint on a file that cannot be loaded, or a file that is formatted incorrectly, you may receive an error message.

  • Creating and running XML checkpoints for large XML documents may take a few minutes.

  • After running an XML checkpoint that validates the XML against an internally referenced schema, the step status and step description in the HTML report may report contradicting statuses. If either one reports a failure, this indicates that the checkpoint failed. For more details about the failure, view the test results in the Run Results Viewer.

Working with ALM In ALM, you cannot create, edit, or rename checkpoints for keyword GUI components.

Back to top

Windows display scaling (DPI)

Note:  

Using Windows scaling settings other than 100% may cause OpenText Functional Testing to fail to identify objects in the correct locations in your applications. For example, you may experience differences when spying, highlighting or recognizing objects.

To avoid errors, set the Windows settings to display all text and applications at 100%.

For example, On Windows 10 or 11, browse to Control Panel\Appearance and Personalization\Display, and click set a custom scaling level. Then select 100% from the dropdown list.

Back to top

Using statement completion

Statement completion is not available for the following types of code:

  • Variables. For example:

                            Set x = CreateObject("Application.Excel")
    x 
                        
  • Class methods. For example:

                            class fooClass
    publicfunctionfoo
    sin(45)
    end function
    End Class
    Set x = New fooClass
    x
                        

Back to top

Text test objects

Modifying test object descriptions

When you modify the test object image of a Text test object, OpenText Functional Testing uses OCR to extract the text from the image and updates the text property accordingly.

However, if you manually modify the text property's value, the test object image is not updated. The new value of the text property is used for object identification.

Multi-line text

Text test objects support only single-line text.

If, when learning a Text object, you select an image with multiple lines of text, a test object is created only for the first line.

Back to top