Transcript
Page 1: Extending qc with open test architecture (ota) api

QTP: Object Repository, Descriptive

Programming and Beyond

[email protected]

By Quontra Solutions

Page 2: Extending qc with open test architecture (ota) api

Object Repository vs. Descriptive Programming –what to use? There really is no “best way” Use the method that gives your company the

best ROI, whether that be Object Repository (OR), Descriptive Programming (DP) or a mixture of both

[email protected]

Page 3: Extending qc with open test architecture (ota) api

OR Pros and Cons

PROS: GUI Front end to examine all the objects in

the repository Highlight in Application feature is great tool to

walk the object tree No need to modify the script when object

properties changes Easy to identify objects in AUT by Object

Logical names Can be created independently from scripts

Page 4: Extending qc with open test architecture (ota) api

OR Pros and Cons

CONS: Additional layer to maintain Unnecessary objects can be created Multiple users cannot concurrently save/write

to the shared OR It won’t eliminate the need for Descriptive

Programming in most of cases

[email protected]

Page 5: Extending qc with open test architecture (ota) api

DP Pros and Cons

PROS: It’s a white box Compatible with different QTP versions Code portability is high Easy to mass update

[email protected]

Page 6: Extending qc with open test architecture (ota) api

DP Pros and Cons

CONS: Lower Code Readability and requires more

comments, like “what object is accessed” Potentially slower to create To highlight an object in the application

requires utilizing the “Highlight” method

[email protected]

Page 7: Extending qc with open test architecture (ota) api

What is Object Repository?

Object Repository is a place where QTP stores learned objects

QTP uses default Object Identification properties: mandatory and assistive to learn objects into OR

[email protected]

Page 8: Extending qc with open test architecture (ota) api

Object Repository

Logical Name

Properties

[email protected]

Page 9: Extending qc with open test architecture (ota) api

OR: Object identification default properties

[email protected]

Page 10: Extending qc with open test architecture (ota) api

Script playback using OR

QTP finds the Object in Object Repository using object Logical Name and Object Hierarchy

QTP retrieves Test Object properties from OR QTP searches actual application for the

Object with the same properties as the OR Test Object and performs user action

[email protected]

Page 11: Extending qc with open test architecture (ota) api

Script playback using Descriptive programming QTP searches the Application Under Test

(AUT) for the Object using Descriptive properties and performs user action

[email protected]

Page 12: Extending qc with open test architecture (ota) api

Descriptive programming – when and why?Consider using DP in following cases: Dynamic object properties

Example: Link Logout <User Name> Same objects on every page

Example: Buttons – Next, Back, Cancel, OK Lots of similar objects on one page

Example: table with many First & Last name text boxes

[email protected]

Page 13: Extending qc with open test architecture (ota) api

Different ways to work with objects

[email protected]

Page 14: Extending qc with open test architecture (ota) api

Different ways to work with objects Example for Passenger 1 First Name

[email protected]

Page 15: Extending qc with open test architecture (ota) api

ChildObjects method – using Collection Object

[email protected]

Page 16: Extending qc with open test architecture (ota) api

ChildObjects method – using Collection ObjectLast Name fields

are populated

[email protected]

Page 17: Extending qc with open test architecture (ota) api

TO, RO and .Object

.GetTOproperty/SetToProperty refers to the properties stored in OR

.GetROProperty property refers to the AUT Object property (Run-time)

.Object.<property/method> refers to the AUT Object NATIVE properties/methods

[email protected]

Page 18: Extending qc with open test architecture (ota) api

Better names for Object Spy radio-buttons

Run-Time NATIVE Object Run-Time QTP (Test) Object

[email protected]

Page 19: Extending qc with open test architecture (ota) api

Object Run-Time Properties from AUT (GetRoProperty)

[email protected]

Page 20: Extending qc with open test architecture (ota) api

Run-Time “Native” Object Properties/Methods from AUT (.Object)

[email protected]

Page 21: Extending qc with open test architecture (ota) api

Test Object Properties from ORSet/GetToProperty

[email protected]

Page 22: Extending qc with open test architecture (ota) api

Regular Expressions in ORExample: Server independent Page object1. Click on Property value to access RegEx 2. Click RegEx Icon

[email protected]

Page 23: Extending qc with open test architecture (ota) api

Regular Expressions in OR

Page 24: Extending qc with open test architecture (ota) api

Regular Expressions in OR

RegEx icon

[email protected]

Page 25: Extending qc with open test architecture (ota) api

Object Smart Identification

Smart Identification is not Artificial Intelligence

SI uses loose/unreliable object recognition It’s recommended to disable SI for each and

every page/window/control using the Tools->Object Identification dialog (Recording)

Another way to disable SI: File -> Settings -> Run -> Check the "Disable Smart Identification during run session" check box (Run-Time)

[email protected]

Page 26: Extending qc with open test architecture (ota) api

Smart Identification (SI) Recording Options

SI Checkbox

[email protected]

Page 27: Extending qc with open test architecture (ota) api

Smart Identification (SI) Run Option

SI Checkbox

[email protected]

Page 28: Extending qc with open test architecture (ota) api

www.quontrasolutions.com

FOR MORE DETAILS CONTACT US

QUONTRA SOLUTIONSVisit: http://www.quontrasolutions.com/

Email: [email protected]

Call Now :

US: +1 (404)-900-9988. UK: (20)-3734-1498.

[email protected]

[email protected]


Top Related