1 / 29

QTP: Object Repository, Descriptive Programming and Beyond

QTP: Object Repository, Descriptive Programming and Beyond. Prepared by: Igor Gershovich. Object Repository vs. Descriptive Programming –what to use?. There really is no “best way”

Olivia
Download Presentation

QTP: Object Repository, Descriptive Programming and Beyond

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. QTP: Object Repository, Descriptive Programming and Beyond Prepared by: Igor Gershovich

  2. 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

  3. 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

  4. 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

  5. DP Pros and Cons PROS: • It’s a white box • Compatible with different QTP versions • Code portability is high • Easy to mass update

  6. 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

  7. 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

  8. Object Repository Logical Name Properties

  9. OR: Object identification default properties

  10. 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

  11. Script playback using Descriptive programming • QTP searches the Application Under Test (AUT) for the Object using Descriptive properties and performs user action

  12. 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

  13. Different ways to work with objects

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

  15. ChildObjects method – using Collection Object

  16. ChildObjects method – using Collection Object Last Name fields are populated

  17. 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

  18. Better names for Object Spy radio-buttons Run-Time NATIVE Object Run-Time QTP (Test) Object

  19. Object Run-Time Properties from AUT (GetRoProperty)

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

  21. Test Object Properties from ORSet/GetToProperty

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

  23. Regular Expressions in OR

  24. Regular Expressions in OR RegEx icon

  25. 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)

  26. Smart Identification (SI) Recording Options SI Checkbox

  27. Smart Identification (SI) Run Option SI Checkbox

  28. Resources • QA Forums – www.sqaforums.com • HP/Mercury QTP User guide • Knowledge inbox (by Tarun Lalwani) - http://www.knowledgeinbox.com/ • Microsoft TechNet - http://www.microsoft.com/technet/scriptcenter/

  29. Igor Gershovich • E-Mail: igershovich@connectedtesting.com • Phone: 720-933-9395 • www.connectedtesting.com

More Related