About Developing the UFT One Testing Agent
After you decide how to implement the Testing Agent and determine the object model that the Testing Agent will support as described in Planning Your UFT One Testing Agent, you can begin to implement UFT One Testing Extensibility. The first step is to implement the ITestable interface defined in the UFT Extensibility Agent type library. This interface provides support for the most basic UFT One capabilities.
The ITestable interface is the only interface in the Testing Extensibility SDK that is mandatory. By implementing this interface, you enable UFT One to recognize objects and run GUI tests on applications developed in your environment. In addition, you support the retrieving of run-time values of test object identification properties and the adding of test objects to the object repository.
After implementing the ITestable interface, you can implement the additional interfaces in the UFT One Testing Extensibility SDK. These support more advanced UFT One capabilities such as Record, Active Screen, Object Spy, and Highlight. For more information, see Enhancing Your UFT One Testing Agent.
The table below specifies the main UFT One capability for which each ITestable method is used:
UFT One Capability | API Method |
---|---|
GetTestingEnvironment (handshake) | |
Note:
The ITestable2 interface inherits ITestable and declares method FindObjectId2. Implement FindObjectId2 instead of FindObjectId to support UFT One Smart Identification. For more information, see Implementing FindObjectId or FindObjectID2: Map a Description to an Object ID.
The ITestable3 interface inherits ITestable2 and declares method RunEx. Implement RunEx instead of Run if you want to add test-object related lines to the UFT One run results.
If you implement the ITestable3 interface, then UFT One also calls FindObjectID2 instead of FindObjectID. Make sure to implement this method even if you do not want to support Smart Identification.
Develop your agent in stages, testing after you develop each stage:
Develop the Testing Agent's handshake with UFT One.
Implement only the initial handshake between the Testing Agent and UFT One. This enables UFT One to recognize the testing environment so that you can write UFT One GUI tests with objects and operations defined in your environment.
Create support for recognizing objects and running tests.
Implement the methods required for UFT One to recognize a few objects and run tests.
Create support for retrieving identification property run-time values.
Implement the methods required for UFT One to retrieve identification property run-time values from the application being tested.
Create support for learning objects.
Implement the methods required for UFT One to learn objects and add them to the object repository.
Extend the support you created to include all of the objects in your environment.
Complete the definition of your testing environment to include all of the objects in your environment. Implement support for all of the test objects and operations in your environment. Implement any remaining methods in the ITestable interface.
For more information, see Before You Begin.