The following list describes the levels of requests:
Action | Method |
---|---|
Process low level events | processMouseEvent |
Locate target of a drag action | getMethodSpecForPoint |
Verification Point support | getTestDataTypes getTestData getProperties getStandardProperties getProperty |
Hierarchy methods | getMappableParent getParent getChildren getMappableChildren getOwner getOwned |
Recognition support | getRecognitionProperties shouldBeMapped getRole getTestObjectClassName getRecognitionPropertyWeight |
The Functional Tester client sends requests to all test domains if they can find the target object in its recorded object map hierarchy by using the recorded recognition properties.
Result | Action |
---|---|
No target object is found | A TestObject not found exception is thrown. |
Several target objects are found | The object finding score is used to determine the winner, or it can be ambiguous. |
A unique TestObject is found | The playback action method is invoked on the proxy. For example, the playback action which was recorded, may be the click() method. |
More than one TestObject was found within the ambiguity threshold | An ambiguous exception is thrown. |
Functional Tester uses recognition properties and control hierarchy to identify a control and provides an interface. This information is collected and stored in the Object Map. During playback the stored information is used to uniquely identify the UI element. Functional Tester also collects information on screen coordinates, control properties and data, reflection details, and portions of the controls when required. It presents the UI element with the gathered information as a TestObject to the script side.
At the time of recording user actions such as mouse clicks, double-clicks or drags are recorded as respective TestObject methods into a test script. For example, button().click(atPoint(10,10)). During playback, Functional Tester finds the corresponding TestObject using the information stored in the Object Map and the user action is performed based on it.