In continuation with our series of interview with QTP experts, today we have Paul Grossman.

Paul Grossman – founder of QTPsecrets.com – has been an automated software tester for over eight years. He thrives on challenges. When he eagerly joined his initial project, he was surprised to find he had been made the Lead of a defunct project. His perseverance enabled him to demonstrate a two million dollar ROI for the company. The research and lessons learned of the initial failed project led to his “Secrets of Test Automation” presentations at many quality conferences including PSQT, QAI/QUEST, Mercury World and HP Software Universe. He is known for consistently delivering a live interactive product demo mixed with a sly sense of humor.

LearnQTP: Which features of QTP would like to see changed, dropped or included in the next versions of QTP?

Paul:QTP Experts Interview

  • Changed: The Step Generator. It does a wonderful job of creating the correct syntax for generating a line of code. However the interface requires too many mouse clicks.
  • Included: A common startup script generation interface. It’s half there right now, but divided up into three areas, without much documentation on how to effectively implement them. Test Design Studio has wonderful complimentary startup script templates for just this reason.
  • Dropped: Virtual objects.

LearnQTP: What is the toughest QTP challenge that you have faced?

Paul: The biggest challenge in any test automation project is getting and maintaining “Buy in”. You may find that developers who are unfamiliar with QTP liken it to a “Toy” as compared to their “Tools”. If you find something subtle occuring in their application, they are more likely to point to your automation tool as the culprit. If that had been true, I would not have gotten much farther in my career beyond my initial WinRunner proof of concept. Then you have the fear of your manual tester co-workers who think you will automate them out of a job. Once they realize test automation does have it’s limits, and works better to compliment their capabilities, they often embrace it. Particularly when it replaces some of the tedious work no one like to do. Lastly, you need to maintain the Buy-In of Management. That is only accomplished by demonstrating a Return on Investment from a history of metrics.

 

LearnQTP: Let’s say you have to hire someone for a junior and another for a senior role in QTP. What questions and answers will set apart a senior position from a junior one?

Paul: Unfortunately, I can’t share specifics of the questions and expected answers that separate the best from the rest. This is a very popular forum and I would rather not risk having my knock off questions memorized.

But in general, in a Junior role, I look for someone with practical experience who can demonstrate an understanding of basic programming skills in the tool of choice. They should be familiar with commonly held best practices, and can describe how they benefit their code design, as well as a test automation project.

In a Senior role, I look for someone who can describe what will cause an automation project to fail. I know, it’s the last thing you would expect to talk about in an interview, right? They should be able identify procedures they follow to avoid these pitfalls. I also look for creative use of the tools that extend outside the scope of testing. They should know regular expressions, give solid examples of their use.

 

LearnQTP: Which feature of QTP was your most recent discovery?

Paul: System resource tracking with QTP 10.0. My first project benefited our Development by quickly identifying memory leaks in the application, almost exclusivly. It bought me a lot of “street cred” with them. But I had to roll my own functions to pull it off at the time. Now it’s built in.

LearnQTP: What according to you are the key elements of a robust QTP automation framework?

Paul:

  1. Simple abstraction that hides the complexity of the framework and takes advantage of reusable code.
  2. Scalability from parameterized values to allow larger sets of test data to be run unattended.
  3. Recover from instability, allowing tests to execute unattended even when objects are not found and msgbox debugging statements remain in the code.

LearnQTP: How significant is QTP certification to you when you’re screening candidates for a QTP tester position?

Paul: I am a certified HP Instructor and hold an HP ASE QC 9.2 (QTP 9.2) certification. I have held several Mercury certifications since 2002 including CPS and CPC. Although the delivery of certification exams has improved over the years from the initial two-month take home exam, the depth of the exam has diminished slightly. I had to discover how to self-terminate the WinRunner application on my initial exam, which Mercury publicly stated was not possible in their Knowledge Base articles. However, having a certification should not be equated with getting a pass in the interview screening process. In fact, certified individuals should be expected to perform better during an interview. The certification can allow you to command a higher bill rate or salary. But in the end, you need to back it up with experience to land the job.

 

LearnQTP: What would you recommend as the best way to learn QTP?

Paul:

  1. Start by trying to automate something fun. Automation is code development and code development is not for everyone. It’s like learning to effectivly perform a French Drop to make a coin appear to vanish from your palm, or eating an entire meal, rice included, with chopsticks. It takes practice, practice, practice.
  2. Get a great mentor. Mine were Linda Hayes, Jaime Mitchel and Dr. Magdy Hanna.
  3. Hang with the experts. SoftwareInquisition.com, AdvancedQTP.com, TDForums.com to name a few.

 

I would again like to thank Yaron, Tarun, Will and Paul who took time out of their schedules and shared their insights with the QTP community. You can catch up with the full series of interviews here.