Problems with object recognition
If you encounter a problem with object recognition during testing, you might be able to resolve the problem by following these instructions.
Objects and controls are not recognized
Problem
- The controls are custom controls that HCL DevOps Test
UI (Test UI) does not officially
support. Therefore, the controls are recorded in a generic domain, as shown in this
example::
afxWnd90uwindow().click(atPoint(252,212));
Resolution
- Create a custom proxy for those controls or submit an enhancement request to get your application supported by Test UI.
The click action on UI controls do not work
Problem
When you run a functional test by using the Web UI engine, the test steps that contained the 'click' action might fail as the UI control is not correctly recognized. This problem might occur because of the changes in the settings of the async flag in the ivory.properties file.
Resolution
- Open the ivory.properties file located at <Install_Directory>\HCL\DevOpsTest\FunctionalTester\bin.
- Set
functional.tester.html.playback.async=false
. - Restart Test UI.
Previously recorded scripts do not work
Problem
The test object map lists the test objects in the application under test, in a hierarchy. If the application under test changes, the object hierarchy might change. During playback, Test UI cannot find an object whose hierarchical position changed, and as a result, playback fails.
Resolution
- Use the dynamic find feature. When a search that is based on object recognition scoring
(ScriptAssure) fails to find objects whose hierarchy has changed, the dynamic find feature
searches for such objects. To convert an object to a dynamic object:
- From the test object map menu, right-click the test object map, and click Convert To Dynamic Test Object ().
- In the Convert To Dynamic Test Object window, select Select the parent to anchor in the object hierarchy. The new object becomes a descendant of its parent.
- Select the object to convert, and click Finish.
- Search for the object by using the find method instead of the Record-Playback method. When you use find(), Test UI searches for a matching object in the entire hierarchy. Therefore, a change in the hierarchy does not cause the playback failure.