My QuickTest Professional Wish
One of the most frequent (and most vague) questions I'm asked on my blog is “QTP doesn't recognize an object in my application – what do I do?”
I find myself wishing, rather than going back and forth trying to figure out what the issue is, that there was a book I could point them to.
With the recent release of QTP–Descriptive Programming Unplugged – Master Object Identification Techniques by Anshoo Arora & Tarun Lalwani, my wish has finally come true.
About the Authors
The authors are like a wrestling tag team of Hulk Hogan and Randy “Macho Man” Savage. Both are QTP champions in their own right.
Tarun is the author of what I consider to be the best overall book on QTP — QuickTest Professional Unplugged. He's also the moderator of the QTP forums on my favorite test automation forum: SQAForums.
Anshoo is the owner of the popular automation website www.relevantcodes and a big contributor to SQAForums, so you can be sure the information presented in this book is going to help you overcome any tough QTP automation matchups that are thrown your way.
The Layout of the Book
QTP — Descriptive Programming Unplugged covers more advanced topics in Quick Test Professional that you'll inevitably need to know once you've got the basics under your belt. The book is 454 pages long, and is broken up in 18 chapters with appendixes. The chapters are:
- Introduction to Object
- Object Repository
- Descriptive Programming
- Visual Identifiers
- HTML DOM
- Visual Relation Identifiers using HTML DOM
- Testing Complex HTML Tabls
- Localization Techniques and Design Patterns
- Object Identification using XPath
- Object Identification using CSS
- Working with QTP XML OR
- Testing Web Services
- Coding Scripts in .NET
- Web Extensibility
- Creating Reserved Objects
- Appendix A – Approaches for Issue Resolution
- Appendix B – Performance Benchmarks
- Appendix C – XPath vs CSS
- Appendix D – Nesting or RegisterUserFunc Methods
- Appendix E – Eval and Execute
- Appendix F – Cross-Browser Tests
I like how this book builds up steam; the chapters get progressively more advanced the further into it you get. The first chapter provides a nice introduction to QTP object identification for anyone who has ever wondered how QTP recognizes objects in an application. It even contains a cool object identification algorithm diagram that shows the steps QTP goes through to try to ID an object.
It's important to know these steps, because if you're having issue with QTP not recognizing your application, having that basic knowledge will allow you to better diagnose issues, as well as come up with some viable workarounds.
The next chapters walk you through the ins and outs of the object repository (OR), and go into detail (with examples) on how you can use descriptive programming to interact with application fields without using the OR. The descriptive programming section also explains why and when it should be used.
Not just for QTP engineers
Other topics covered that every automation engineer should know, regardless of which test tool(s) they're using, include how to use the HTML DOM, XPath and CSS.
Some of the topics that are covered near the end of the book are ones that I rarely see in any QTP books or manuals anymore — for instance, how to test and handle multiple languages testing (also known as Localization).
My favorite chapter has to be Coding Scripts in .NET. By reading it you will learn some cools ways you can utilize .NET and C# (rather than VBScript) to code your script using a COM based bridge. How awesome is that!?
Buy this Book!
If you could only have two books on QTP both of them should be by Tarun :QTP Unplugged, and now QTP–Descriptive Programming Unplugged – Master Object Identification Techniques.
Both are must-haves for the serious QTP engineer, so be sure to pick them up. Hint: with Christmas right around the corner, QTP–Descriptive Programming Unplugged would make a great gift for your favorite automation geek.
Bonus – Increase your Karma
As an added bonus, not only will buying this book increase your knowledge but it will also increase your Karma. A portion of each copy of sold, a portion of the proceeds will be donated to organizations working towards the cause of child education. True automation goodness. In fact, it make me want to say Randy “Macho Man” Savage’s signature catch phrase, “Ooh yeah!”
Note: I did receive a free copy of this book to review from Tarun.