TestObjects
TestObjects are the script-side interfaces for proxies and application under test (AUT) controls. A TestObject is a connection point between the test script and a ProxyObject that connects to the real object in the AUT. During recording, statements are recorded and objects are added to the Object Map. The script uses the information from the Object Map to construct and find TestObjects.
For example, if you record Button().click()
, the Button()
method
finds an object that is based on the mapped properties and binds the
TestObject to an object in the AUT. This binding is required to query
information from the actual object, such as asking the button directly
where it is on the screen. Then, the click()
method
is executed and the TestObject is unregistered, which releases the
connection to the actual object in the AUT. Using TestObjects from
the map in this manner manages the lifetime of the object automatically.
TestObjects are exposed to the scripting side based on which proxy
it is mapped to. You must specify the proxy and TestObject mapping
so that when a control is exposed to the script, the control is exposed
as the TestObject that is specified in the mapping. You can create
the mapping between a proxy and TestObject by overriding getTestObjectClassName()
method
on any proxy. If you want to change the TestObject that is mapped
to a proxy, override the getTestObjectClassName()
API
to return the canonical name that is specified in the customization
file.