Searching Latest QTP and QA Job Openings becomes Easy Now.

We have launched a Job Search Engine for allowing the users to search latest job openings easily without requiring them to use lot of job sites and employers career pages.

Though this Search Engine can be used for searching any kind jobs, we have specifically optimized it for effectively searching QTP (Quick Test professional) and any other QA (Quality Assurance) related job openings.

You can start using it at here.

In the search results, if you are not seeing any job openings from your favorite company, let me (rajamanickam.a@gmail.com) know so that I can make this job search engine includes job openings from that company also in future.

And, I have announced Special Offer price for buying eBook version of my Book “Software Testing and QTP Automation”. You can see the details here.

If you are interested in buying this eBook, you can do it before the Offer ends.

Best Software Testing Tools

In Early Days,  Software Testing Tools are very demand and very less in the market. Nowadays there are many tools available in market like Commercial tools and Open Source Tools.  Find below the list of Software Testing Tools.

The tools are divided into different categories as follows:

  •  Test Management tools
  •  Functional Testing Tools
  •  Load Testing Tools or Performance Testing tools

Find below the list of Testing Tools  that are  Top and Best Tools in both Open Source (Free Tools) and Commercial Tools used by the Testers for testing software applications.

Open Source Tools:

a) Test Management Tools

b) Functional Testing Tools

c) Load Testing Tools

Commercial Testing Tools:

a) Test Management Tools

b) Functional Testing Tools

c) Load Testing Tools

All-in One  Testing Tools

  • Test Studio – An advanced tool for performance, load, automated testing, test management, exploratory testing

Mobile Testing Tools

  • Testdroid-Automated Testing Tool for Android.

If any of the important testing Tools is missing from this list, you can mention it thro’ the comments.

Software Testing Resources (WebSites,Blogs,and Forums)

Find below the collection of useful websites, Blogs and Forums for learning Software Testing. Let us know if you want to add any other useful Software Testing Resource in this list.

And, you can mention your favorite Software testing related website thro’ the comments section. We will rearrange the order of this list based on comments. i-e We will keep the the website which receives most number of positive comments.

  1. SQA Forums – This is the very useful Forum for learning Software Testing and for learning Software Testing Tools especially QTP (Quick Test Professional). Mostly, you will get appropriate solution/answer for your problem/questions within few days if you post your questions in this Forum. Personally, I had used this Forum effectively to learn QTP many years back. I think this Forum is available for more than a decade. Previously it was known as qaforum.com
  2. JAMES BACH’S BLOG This blog is having lot of interesting software testing related posts starting from year 2003. James Bach is one of the Authors of the book titled “Lessons Learned in Software Testing”
  3. LinkedIn Discussions LinkedIn is having lot of Software Testing Related Groups. We can join the desired Groups and we can participate in the Software Testing related Discussions and we can start our own discussion also. Apart from these Groups, LinkedIn is having Answers section which will allow us to ask our questions.
  4. Google Testing Blog – This Google blog explains the Testing processes followed within Google.
  5. QualityPoint Blog – This blog is written by myself. I had written an eBook about Software Testing and QTP automation. Mostly my articles will be telling more about practical approaches of Software Testing. Because, I work as Developer also apart from being a Tester. And, I am doing Business also now. So, my main focus will be doing Software Testing in a way to help Developers and Business (Obviously it should help the End Users)
  6. Agile Testing – Thoughts on testing and systems infrastructure with an agile, mostly Pythonic, twist
  7. Martinfowler This blogs speaks more about effective Software Developments and Agile methods to improve productivity.
  8. Cem Kaner’s Blog – He is one of the authors of the book titled “Lessons Learned in Software Testing”
  9. Misko Hevery – He writes about writing Testable Code
  10. Develop Sense – Michael Bolton writes about how to do excellent software testing in a way that is very fast, inexpensive, credible, and accountable.
  11. Sara Ford’s Weblog – Former Microsoft employee writes about combining agile methodologies with community management to provide the best user experience possible for websites
  12. Association for Software Testing – AST is dedicated to advancing the understanding of the science and practice of software testing according to context-driven principles.
  13. IT Knowledge Exchange
  14. GOJKO ADZIC
  15. Thinking Tester– This blog provides information about software testing.
  16. Chris McMahon’sblog
  17. JW on Test
  18. Software Testing Help
  19. Corey Goldberg
  20. Testertested
  21. Steve Rowe’s Blog
  22. Exploration Through Example
  23. Test this Blog
  24. Expected Results
  25. QA Intelligence– This is a Testing & QA Management blog.
  26. Adam Goucher
  27. Stevesouders.com
  28. QA Hates You
  29. Curioustester
  30. Stefan Thelenius about Software Testing
  31. Testledaren.se
  32. Relevantcodes.com
  33. I.M.TESTY
  34. Automated Chaos
  35. Software Testing Hotlist
  36. Practical QA
  37. ABAKAS
  38. Tooth of the Weasel
  39. Test Obsessed
  40. Quality Frog
  41. Testing Hotlist Update
  42. Collaborative Software Testing
  43. Eric Jarvi
  44. Test Guide
  45. Testy Redhead
  46. Software testing zone
  47. Marlena’s Blog
  48. Software Testing and more
  49. patrickwilsonwelsh.com
  50. Quality Assurance and Software Testing
  51. Testing Testing 1,2,3
  52. Mike Kelly’s blog
  53. Enjoy testing
  54. Evil Tester
  55. Charlie Audritsh’s blog
  56. Maverick Tester
  57. Paul Gerrard’s blog
  58. shino.de
  59. Cartoon Tester
  60. cLabs Blogki
  61. Jeff Fry on Testing
  62. Venkat’s Blog
  63. Agile Testing and Process Thoughts
  64. Software Testing Stuff
  65. selenadelesie.com
  66. Software Sleuthing
  67. The Software Quality Blog
  68. One of the wolves
  69. Musing about Software Testing
  70. Jon Bach’s blog– Jon Bach’s blog, highlighting the humanity in software testing
  71. Quardev
  72. Software Testing Club Blog
  73. TestToTester
  74. Agile Testing with Lisa Crispin
  75. Confessions of a Passionate Tester
  76. I am filled with solutions
  77. Software Testing
  78. Rosie Land
  79. Still Life– This blog is about testing, work, random thoughts, automation and scripting.
  80. Brian Osman
  81. Dhanasekar S’s Blog
  82. The Social Tester
  83. QA Insight
  84. The Testing Blog
  85. Testingminded
  86. Swgetesting
  87. Jeroen’s world of Software Testing
  88. TestingPerspective
  89. Adam White
  90. Purple Box Testing-It gives some brief information to Testing terms like Bugs,Test Cases,Manual Testing,Automation,Tools and Test management.
  91. Lessons Learned by a Software Tester
  92. Pliant Alliance
  93. Testjutsu
  94. Illiteration
  95. Tester Testifies
  96. Santhosh Tuppad’s Blog
  97. Teknologika
  98. Creative Tester
  99. Tester Troubles
  100. Thoughts on QA and Engineering-This blog contains information of about Software Quality,Testing,Quality Assurance and Engineering in general.
  101. Quick Testing Tips
  102. Cruisin QA
  103. Tester Lost Focus
  104. James McCaffrey’s blog-This  blog explains the Software Research, Development, and Testing.James McCaffrey is an author of .NET Test Automation Recipes and Software Testing.

Importance of Software Test Automation using tools such as QTP

Software Testing plays an important role in Software Development lifecycle.
Doing manual testing is not enough. We should go for Automation Testing also.

  • “To Error is Human” is the fact which drives the need for automation testing. Because, manual testers may not execute the test cases correctly. There will be lot of possibilities for making mistakes. They may give wrong input data due to typo, or they may not notice the actual behavior of the system correctly, or they may not report the test result correctly, or they may miss to execute some test cases, or they may forget to run some preconditions, or they may change the sequence of test case execution in case sequence is important.
  • Another important factor is, Automation test scripts will be used as a way of storing domain/project/task Knowledge gained by the Test Engineers. Say for example, if a Tester works in project for one year, he might have spent more time for learning the domain, purpose of the project, modules in the project, flow of all functionalities. He will be familiar with known issues and challenges.
    If this Tester leaves from the project, the knowledge gained by him also will leave.
    It is very difficult for the newly joining Tester to understand everything from the Test Case document.If automation test scripts are already available then the new Tester can just start the testing by running the automation scripts, without gaining much knowledge about the project.He can understand the flow/data by seeing the execution of the automation test scripts. But anyway, he should gain project/domain knowledge to enhance/update the automation scripts further.
    So we can say that test automation is a way of storing knowledge.
  • Automation tool such as QTP (Quick Test Professional) has feature for storing screenshot of each and every page navigated during the execution. So it can be used as a proof for completion of testing, and also we can refer the screenshots of previous executions if there is any need to refer them.
  • Test report can be automatically written to a customized report page which will ensure accuracy of the report and also it can improve look & feel of the report.
  • The very important advantage of automation testing over manual testing is execution speed. Test execution can be completed quickly and also we can execution the scripts in night time also without human involvement. So ultimately total time needed for testing can be reduced which will significantly help for timely project completion.
  • Here may be requirement of doing some testing at specific time. It can be easily achieved by putting execution of those automation test scripts in a task scheduler/crone job. The tool such as QTP supports automation object model to achieve this.
  • The functional test automation scripts will be useful for doing performance testing also. Because many performance test tools will support reusing/calling of these test scripts.
  • Some type of testing involves comparing large amount of data between previous version and current version as part of regression testing. Practically it may not possible for doing it manually. This problem can be easily solved by simple shell script or any other scripts such as vbs, wsh.
  • As the automation test tools support Data Driven Testing, Test execution can be done repeatedly with many different data sets.

There are lot of automation test tools are available for doing Functional, Regression and Performance Testing. Test complete, SilkTest, SilkPerformer, QARun, QALoad, TestPartner, WinRunner, LoadRunner, QTP, Rational Robot and openSTA are some of them. QTP is most widely used now as it supports vbscript and it can be used for testing many different applications just by adding required add-ins.

You can Watch the below video explaining Importance of Software Test Automation.

QTP Questions and Answers

Find the answers at the end of the questions.

1) Quick Test Professional (QTP) is used as,
a) Functional Testing tool b) Performance Testing tool c) Usability Testing tool d) Bug tracking tool


2) The below vbscript code is used for,

Set qtApp = CreateObject(“QuickTest.Application”)
qtApp.Launch
qtApp.Visible = True

a) For launching Function Generator b) For opening QTP using Automation Object Model c) For creating Object Repository from Coding d) For making ActiveScreen visible


3) Extension of vbscript  function library file is,
a) .vbs b) .mtr c) .lib d) .qtp


4) Which one of the below is External add-in in QTP?

a) ActiveX add-in b) Visual Basic add-in c) Java add-in d) Web add-in


5) Which is used to add report statements in QTP report file?
a) showreport b) reporter.writeline c) reporter.reportEvent d) printReport


6) In QTP, properties of Test Objects are stored in
a) ObjectSpy b) Active Screen c) Object Repository d) Library


7) Which is used for storing Data used by Test Iterations in QTP?
a) Local sheet b) Global Sheet c) Action Sheet d) Object Repository


8) Which view will allow us to edit the vbscript code in QTP?
a) Keyword view b) Expert View c) code view d) view source


9) The Test Management Tool which can be easily integrated with QTP is,
a) Test Track b) Bugzilla c) Object Repository d) Quality Center


10) Which is used for storing Data used by Action Iteration in QTP?
a) Local sheet b) Global Sheet c) Object Repository d) External Action


11) Outcome of the below QTP code (vbscript) is,

Set obj = CreateObject("WScript.Shell")

sCmnd = "%windir%\SYSTEM32\rundll32.exe user32.dll,LockWorkStation"
obj.Run sCmnd, 0, False

a) Runtime error b) Computer will be locked automatically. c) Computer will be unlocked d) will throw syntax error


12) Which is used for verifying whether the Actual result matches with expected result in QTP?
a) ObjectSpy b) Object respository c) Checkpoints d) Expert view


13) Which is built-in add-in QTP?
a) TE add-in b) java add-in c) web add-in d) .net add-in


14) Setting in one instance of QTP IDE can be transferred to another machine using,
a) Data driver b) Function Generator c) Step Generator d) Automation Object Model


Answers


(1) a  (2) b  (3) a  (4) c  (5) c  (6) c  (7) b  (8) b  (9) d  (10) a  (11) b  (12) c  (13) c  (14) d

QTP trial version installation

Learning QTP (Quick Test professional) will become easy if we practice some simple tutorials with QTP.

HP is providing free trail offer for Quick Test Professional.

Follow below steps to have a QTP set up.

First do keyword search for “quick test professional” in HP website

You can see the download link under “trail versions” in the search result.

Once after downloading it you can easily install it just by clicking the setup icon. You will need maintenance number while doing installation. You can contact the HP to provide Maintenance number for you.

This Trail version will be valid for 14 days which is enough to learn QTP

QTP Interview Questions and Answers

This Chapter will be useful if you are in a position to start any Software Testing automation project.

In this Chapter I am going to write about selecting appropriate candidate for your Team if you are going to Automate your testing activities using a tool QTP (Quick Test Professional)

First, we can start with short listing resumes of suitable candidates.

Basically QTP is just a Tool. Your Team members can be trained in this Tool easily if they meet some prerequisites (e.g knowledge about Software Testing Concepts and programming fundamental knowledge).

So, it is not necessary to short list the candidates with prior work experience with QTP unless you want a Team member who needs to start work on QTP script creation from day one of joining your Team.

But, give priority to the knowledge and/or work experience in any kind of Software Testing.i-e Having hands-on with manual testing is a big plus for the Automation tester.

And, you can choose the profiles with knowledge/experience in some other automation test tool also. It will help them learn QTP quickly.Candidates with vbscript knowledge/experience can learn QTP fast.

Vbscript is used in ASP (Active server pages). So, you can consider ASP developers also for your QTP automation Team.

If you are going to create your Automation Team from scratch, at least you should have one resource (Assume “Team Lead”) with good experience in QTP. His experience should include creating appropriate automation framework and should be expert in handling any object recognition issues.

If you are not having such a person to handle any object recognition related issue, it will be difficult to complete the project even if you have good team members to create scripts.

Now, we can discuss about selecting your “Team Lead” and other members.
First we will start with doing interview for your “Team Lead” position in the QTP automation project. (I mean to say the project which involves automating the functional and regression testing activities using the QTP tool)

Ask the candidate about handling Object repository.

Ask him to explain any QTP object recognition related challenges he faced during his previous projects. And, ask him to explain how he had solved those issues.(Anyone who worked in any QTP automation project should have faced such an issue)

Ask the candidate to explain about his understanding about Automation Framework.

Ask him how he will deliver the QTP script to production environment from the development environment. In other words, try to get details about his understanding about AOM (Automation Object Model).

Ask him to explain about his understanding about COM objects and ask him whether he has handled any COM based application ( e.g xcel, internet explorer, fso,etc) from QTP script.

Ask him about his approach to split any task to be given to the Team members. His answers should reflect his understanding about proper use of Shared object repository.

Ask few questions which can help to reveal his understanding and approach of Configuration management in QTP script development environment.

You may ask few questions which can test his thinking about script maintenance.

Apart from QTP knowledge, you can ask some questions for knowing about his basic knowledge in other test automation tools. It will be required for tool evaluation to start any new project. And, it will be useful when doing any migration project.
For example, having some basic knowledge in winrunner will be helpful if you are going to convert winrunner scripts into QTP scripts.

Ask him to explain about integrating the QC (Quality Center) with QTP.

Test his knowledge about Database connection with QTP. At least he should be familiar with ADODB, connection string and recordsets. And, he should be familiar with basic SQL queries also.

In case of interviewing Team member, just check his knowledge in Software Testing concepts and knowledge in any programming knowledge. You can ask him about SDLC.
Ask him to explain about various checkpoints, data driven testing, expert view/keyword view, regular expression and recovery scenario in case he had learnt QTP previously.

Find below the collection of common interview questions related to QTP.It will be useful for the people who are searching job as Automation test engineer.

Explain about Object Repository in QTP?
Object Repository is the centralized place for storing the Properties of objects available in AUT (Application Under Test). Click here for the detailed Answer.

What are the two different Types of Object Repositories available in QTP?
Local Object Repository and Shared Object Repository. More details…

What Descriptive Programming and what are the advantages of using Descriptive programming in QTP?
Instead of using Object Repository for storing properties of Test objects, we can straight-away define the properties while writing the script itself using DP. Using Descriptive programming we can start work on writing QTP scripts even before the application under Test is NOT available. More details…

What are the disadvantages of Descriptive Programming in QTP?
The main disadvantage of Descriptive programming is Maintenance issue. More details…

What is framework in QTP?
Framework is nothing but a way or approach of designing the automation scripts. QTP uses various frameworks such as Key Word Driven Testing and Data-driven Testing.
More details…

How will you get evaluation version of QTP?
We can get 14 days trial version of QTP from HP site. More details…

What are the various settings/options available in QTP? And, explain the purpose/scope of them?
Some setting in QTP are specific to Tests and some setting are specific to the IDE. More Details…

How will you set the QTP script to start run at specified time?
We can use AOM (Automation Object Model) for creating the vbscript which can be put in windows scheduler for running the QTP script at specified time. More details…

Tell the difference between Action Iteration and Test Iteration in QTP?
Action iterations will be nested within the Test iteration. Action iteration will use the data from local data sheet and the Test Iteration will use the data from Global sheet of the data table. More details…

How will you automate the testing of .NET application which uses thrid-party UI component such as Infragistic netAdvantage?
We should extend capability of .net add-in by using TestAdvantage More details…

How to handle Passwords in QTP Scripts?
We can encrypt the password using password encoder utility provided by QTP. SetSecure method can handle this encodeded password. More details…

What are the steps/processes involved in QTP automation?
Creating scripts, enhancing scripts, debugging, run script, analyze the results and report the defects. More details…

List some best practices need to be followed while doing QTP automation?
We need to use Shared Object repositories and need to use synchronization point wherever it is required. More details…

What is Object Spy in QTP? And, how to use it?
Object Spy is used for seeing properties and methods of any object in an open application. We can see the properties just by pointing the mouse pointer on the object once after clicking the hand symbol button in the Object Spy Dialog. More details…

How to use Object Spy if the required object is not visible (i-e window of the the object is not active)?
Maximize the window or bring it into the top active window while holding Ctl key after clicking the hand symbol button pointer in the Object Spy dialog box. Once the object is visible, release the Ctl key to use the object spy functionality.

How will you read the Test Object property using scripting?
We can use the “GetTOProperty” method.

What is the use of GetTOProperties method?
This method will be used for getting all the properties and their values of a Test Object.

Which QTP method can be used to get the value of an object property during runtime?
GetROProperty

Will SetTOProperty method make any change in the Object Repository?
No, it won’t make any change in the Object Repository. It will just affect the way QTP identifies the object during runtime.

Is it possible to read all the RO properties of a Object?
QTP is not having any built-in method for reading all the RP properties of an Object. But we can write simple script for reading all the properties from windows registry and then get the value of each property using the GetROproperty method. More details…

Why we need to automate the software testing using the tools such as QTP?
Automation will avoid human related errors and it can improve the test execution speed also.More details…

Is it possible to automate all the test cases?
No, it is not possible to automate all the test cases. We need to pick the test cases that can be automated.

Tell me about your understanding about QTP?
QTP is a functional and regression test automation tool. It uses vbscript. It can be easily integrated with Quality Center as both are HP products. It supports data driven testing and keyword driven testing. The add-in concept supports various applications such as web, vb, activex, java, TE, and dotNet. More details…

Explain QTP Testing process?
QTP Testing involves Creating your test plan, Recording a session on your application ,Enhancing your test,Debugging your test ,Running your test on a new version of your application, Analyzing the test results and Reporting defects.Read more details…

Tips for doing effective QTP script Development

  1. Read the Requirements completely and repeatedly till understanding it clearly without any ambiguity. It is better to create own automation testcase/requirement based on the manual test cases or business requirement document.
  2. Highlight or make note of key requirements in the requirement document. And, highlight the points that are difficult to understand.
  3. Don’t hesitate to approach the developer/customer/client if you need any clarification in the requirement and also don’t hesitate to inform if any of the requirements is unrealistic. Prepare a list of requirements or test cases which can not be automated.
  4. QTP Script development Team also should participate in the requirement analysis before starting any application development activity. QTP team can give suggestions (e.g giving unique name/id for each window so that object identification problem can be avoided when creating QTP scripts) for the application development Team for improving effectiveness of the QTP script development.
  5. Start working on coding/scripting part only after getting clear understanding of the overall Design of the system
  6. Enforce Review and Walk Through Activities.
  7. Try to setup Development Environment similar to production environment. Otherwise you will face lot of difficulties while running the QTP script against the production application once after completing your script development using development/testing application.
  1. Do unit testing immediately after developing each small functionality.
  2. Give updates of the progress to the client/customer frequently. If you are facing any difficulty/issue remember to specify in the updates.
  3. Make list of things that will vary from Development Environment and Production environment
  4. Prepare a user guide document and deliver it along with code.

 

Object Spy in QTP

QTP is having a Tool called as “Object Spy” for viewing the properties and methods of any object in an open application.

We can use the Object Spy pointer (a button with hand symbol) to point to an object in the application.

 

 

Object Spy Dialog window is having Two Tabs. One is “Properties Tab” and another is “Methods Tab“.

Each tab is having radio button to choose one of two options “Run-Time Object” and “Test Object”.

The Object Spy displays the selected object’s hierarchy tree and its properties and values in the Properties tab of the Object Spy Dialog box.

The Object Spy enables you to view both the run-time object methods and the test object methods associated with an object in the Methods tab of the Object Spy dialog box.

And, we can to view the syntax for a selected method.

We can bring the “Object Spy” by clicking the Tools->Object Spy… menu or by clicking a toolbar button (an icon showing a person with hat). This icon can be accessed from Object Repository window also.

To see the properties of an object, first click on the button showing hand symbol in the Object spy Dialog.

The mouse pointer now changes in to a hand symbol and we have to point out the object to spy the details about the object.

If the required object is not visible, or window is minimized then hold the Ctrl Key and activate the required window to bring the required window to the front.

Then release the Ctrl button to make the cursor again hands symbol so that you can point the required object.

You can watch the below Video explaining Object Spy.

Managing Object Repositories in QTP

QTP is having separate window named as “Object Repository Manager” for managing various object repositories.

You can open this window from the Menu “Resources->Object Repository Manager…

The Object Repository Manager enables you to manage all of the shared object repositories used in your organization from a single, central location.
It will be used for adding and defining objects, modifying objects and their descriptions, parameterizing repositories to make them more generic, maintaining and organizing repositories, merging repositories, and importing and exporting repositories in XML format.

The Object Repository Manager window will look like below one.

 

You can create new shared repository from this window and can store it as .tsr file.

While adding objects, you will be provided with two options. Either you can choose to add only the selected Object or you can choose to add the selected object and its descendants.

You can store the object repositories  either in file system or in Quality Center project.

The Object Repository(OR) Manager enables you to open multiple shared object repositories and modify them as needed.

This Object Repository Manager provides the options such as  “Add objects”, “Highlight in Application”,  and “Locate in Repository”  for the Shared object repository. It is similar to the local object repository. I will be explaining them in separate post.

By default this OR Manager will be in readonly mode. i-e you can not edit anything in this mode.

We need to choose File>Enable Editing for making it editable.

Update from Local Repository option in the OR Manager (Tools > Update from Local Repository) can be used for merging objects from the local object repository of one or more actions to a shared object repository.

And, it provides Object Repository Merge Tool for merging two shared object repositories.

At the end of the merge process, the Object Repository Merge Tool provides a graphic presentation of the original objects in both repositories, which remain unchanged, as well as the objects in the merged target object repository.

Objects that had conflicts are highlighted. The conflict of each object that you select in the target object repository is described in detail. The Object Repository Merge Tool provides specific options that enable you to keep the suggested resolution for each conflict, or modify each conflict resolution individually, according to your requirements.

And note that while the Object Repository Merge Tool is open, you cannot work with the Object Repository Manager.

Apart from this OR Manager, QTP is having “Associate Repositories” option for  enabling you to associate one or more shared object repositories with one or more actions in a test.