Test Design StudioGo to Previous Topic: Working with XML CommentsGo to Next Topic: Adding Project References

Object Repository IntelliSense

Introducing Object Repository IntelliSense

Test Design Studio provides full IntelliSense capabilities for working with Object Repository files. Many VBScript-based editors are available on the market, but this is one more example of how Test Design Studio was designed to specifically work with Unified Functional Testing. You no longer have to go without Object Repository IntelliSense when working with code files outside of Unified Functional Testing.

What You Need

Unified Functional Testing, unfortunately, stores Object Repository files in a binary file format with the TSR file extension. This is unfortunate because it means you have to have an API to read the files. Users who have Unified Functional Testing installed on their machine will have this API, but others will not.

Fortunately, you can now easily export an Object Repository to an XML-formatted file (refer to Unified Functional Testing Help for details), and XML files can be read by any program! For Test Design Studio to be able to provide IntelliSense for object repositories, simply export those files to XML and give them the TSRX file extension. This will tell Test Design Studio to treat the file as an object repository so that it can be loaded to provide IntelliSense.

Demonstration

Within Solution Explorer, we have two identical Object Repository files added to our project under Editors -> Builtin. One is stored as an original TSR binary object repository, and the other is an XML export of that object repository with the TSRX file extension.

In Solution Explorer, locate and open the new test that we created earlier; MyTest. This test is located under the Tests folder and may be opened by double-clicking the file. Since this test is part of a project, all object repository files that are also in this project will be available for IntelliSense.

On a blank line in the editor, type the text Window( (including the parenthesis) and a Member List of the logical names of available windows will be displayed.

If you pause on an item in the Member List, a tooltip will display the details of that object. While not shown here, any comments that were entered for the object will also be displayed in the tooltip. In addition to any comments, you will see a list of attributes that are being used to identify the object. Select "Flight Reservation" from the list, type the closing parenthesis ), and then type the . (dot) character. A Member List of properties and methods available to the Window object class will be displayed.

Type or select Dialog from the member list, then type the opening parenthesis ( to display a list of available dialog objects stored under the "Flight Reservation" window.

Select "Fax Order" from the list, type the closing parenthesis ), and then type the . (dot) character. A Member List of properties and methods available to the Dialog object class will be displayed.

Within the Dialog member list, scroll to WinEdit. You will notice the icon for WinEdit is shown with a solid dark outline while the icons for other items like WinEditor or WinList appear faded with a dotted outline. The solid icon is used to indicate that items of the class WinEdit (and also WinCheckBox in this example) are actively present in the object repository for the "Fax Order" dialog. The presence of these extra object classes is different from what you see in the Unified Functional Testing editor because it only displays the items that are explicitly defined in the object repository (the ones Test Design Studio shows with dark outline icon). Test Design Studio shows these other possible object classes to assist those who prefer to use descriptive programming for accessing objects. Just because there is not an object defined in the object repository does not mean you might try to access a child object of that type using descriptive programming, and the member list allows you to enter your text with confidence that you are using the right name (e.g. Was it "Button" or "WinButton"?).

You may now close the MyTest editor. When prompted, select Don't Save to discard the edits just made.