JaiK
JaiK

Reputation: 377

QTP Descriptive Programmuing -Loading the objects created through function

I have 10 different test cases .I want to create different objects of SwfEdit, SwfButton etc just once say in function and then use those in different actions in QTP.

I tried creating a function and linked it to a test case,however it did not work. So I am not sure what could be correct way to link all these objects across all the test cases.

Upvotes: 0

Views: 781

Answers (2)

HgCoder
HgCoder

Reputation: 1243

If you insist on creating your objects in code instead of using the object repository, you'll need to store those objects in some type of global variable. A basic example might be for a function library:

' Declare your global variable to hold the object
Public MyObject

' Create your object from a function
Public Sub InitializeGlobalObject()

    ' Use Descriptive Programing to create your object
    Set MyObject = Window("title:=something").Button("index:=0")

End Sub

This will allow you to create the object once and then refer to it by the variable

' Click the button
MyObject.Click

You may run into issues caching an object like this because it will tend to hold on to the last screen object that it matches, whereas the object repository will refresh the screen object each time you call it. You may need to call the 'Refresh' method on your object before you use it for the first time after it is displayed on the screen.

Upvotes: 1

Ziwdigforbugs
Ziwdigforbugs

Reputation: 1214

You should use object repository to add objects first if you are not intending to use descriptive language. You should spy on each object and then add it.

Upvotes: 0

Related Questions