Custom Search

Friday, May 22, 2009

Basics of QTP

Full form of QTP?
Quick Test Professional


What’s the QTP?
QTP is Mercury Interactive Functional Testing Tool.


What’s the basic concept of QTP? QTP is based on two concepts-
• Recording
• Playback


Which scripting language used by QTP?
QTP using VB scripting.


How many types of recording facility are available in QTP?
QTP provides three types of recording methods-

• Context Recording (Normal)
• Analog Recording • Low Level Recording


There are three types of recording modes available in Quick Test Pro.
1.Normal mode 2.Analog mode 3.Low-level recording mode

Normal mode: This is the default mode of recording in QTP, Object and the Operation associated/performed with Object can be recorded. This mode takes full advantage of Quick Test's test object model, recognizing the objects in AUT regardless of their location on the screen.

Analog mode: This mode records exact mouse and keyboard operations you perform in relation to the screen / application window. This mode is useful for the operation which you can record at object level, such as drawing a picture, recording signature. the steps recoded using Analog mode are saved in separate data-file, Quick tests adds to your test a Run Analog file statement that calls the recorded Analog file .This file is stored with your action in which these Analog steps are created. The steps recorded in Analog mode can not be edited within Quick Test.

Low-level recording mode: enables you to record any object or operation in your AUT whether or not Quick Test recognizes it. This Low-level recording is useful when the exact location of an Object/operation in your AUT is important for your test. This mode records in terms of X, Y co-ordinates. Unlike in Analog mode, the steps can be seen in Test script, as well in Keyword view. Normal rec. mode (by default rec. mode is normal)- it captures objects in GUI format and object repository is created with object and its properties stored during recoding time. Mouse movements are not captured in this mode. Analog rec. mode - Objects are not captured, thus object repository is not created. Only mouse movements are captured and this is stored in a file called track file. Mouse movements’ relation to screen /application window can be captured. Low level rec. mode - Objects are captured in Win obj. format and properties stored in obj. repository. if u see in object repository u will notice a different icon for the objects stored here. In this mode u cannot capture overlapping objects. E.g. - menu drop down etc.


How many types of Parameters are available in QTP?
QTP provides three types of Parameter- • Method Argument • Data Driven • Dynamic


What’s the QTP testing process?

QTP testing process consist of seven steps- • Preparing to recoding • Recording • Enhancing your script • Debugging • Run • Analyze • Report Defects


What’s the Active Screen?
It provides the snapshots of your application as it appeared when you performed a certain steps during recording session.


What’s the Test Pane?
Test Pane contains Tree View and Expert View tabs.


What’s Data Table?
It assists to you about parameterizing the test.


What’s the Test Tree?
It provides graphical representation of your operations which you have performed with your application.


Which all environment QTP supports?
ERP/ CRM
Java/ J2EE VB, .NET Multimedia, XML Web Objects, ActiveX controls SAP, Oracle, Siebel, PeopleSoft Web Services, Terminal Emulator IE, NN, AOL


How can you view the Test Tree?
The Test Tree is displayed through Tree View tab.


What’s the Expert View?
Expert View display the Test Script.


Which keyword used for Normal Recording?
F3


Which keyword used for run the test script?
F5


Which keyword used for stop the recording?
F4

Which keyword used for Analog Recording?
Ctrl+Shift+F4


Which keyword used for Low Level Recording?
Ctrl+Shift+F3


Which keyword used for switch between Tree View and Expert View?
Ctrl+Tab


Note:
> QTP records each step you perform and generates a test tree and test script.

> QTP records in normal recording mode.

> If you are creating a test on web object, you can record your test on one browser and run it on another browser.
> Analog Recording and Low Level Recording require more disk space than normal recording mode.



What’s the Transaction?
You can measure how long it takes to run a section of your test by defining transactions.


Where you can view the results of the checkpoint?
You can view the results of the checkpoints in the Test Result Window.


Note: If you want to retrieve the return value of a checkpoint (a Boolean value that indicates whether the checkpoint passed or failed) you must add parentheses around the checkpoint argument in the statement in the Expert View.


What’s the Standard Checkpoint?
Standard Checkpoints checks the property value of an object in your application or web page.


Which environment is supported by Standard Checkpoint?
Standard Checkpoint is supported for all add-in environments.


What’s the Image Checkpoint?
Image Checkpoint checks the value of an image in your application or web page.


Which environments are supported by Image Checkpoint?
Image Checkpoint supports only Web environment.


What’s the Bitmap Checkpoint?
Bitmap Checkpoint checks the bitmap images in your web page or application.


Which environment is supported by Bitmap Checkpoints?
Bitmap checkpoints are supported all add-in environment.


What are the Table Checkpoints?
Table Checkpoint checks the information within a table.


Which environments are supported by Table Checkpoint?
Table Checkpoints are supporting only ActiveX environment.


What’s the Text Checkpoint?
Text Checkpoint checks that a test string is displayed in the appropriate place in your application or on web page.


Which environment is supported by Test Checkpoint?
Text Checkpoint is supported all add-in environments 1. Some more quetions i have with me on QTP. Hope it will help u.


1. What are the Features & Benefits of Quick Test Pro(QTP)..?
1. Key word driven testing
2. Suitable for both client server and web based application 3. Vb script as the scriot language 4. Better error handling mechanism 5. Excellent data driven testing features


2. Where can I get Quck Test pro(QTP Pro) software.. This is Just for Information purpose Only. Introduction to QuickTest Professional 8.0, Computer Based Training: Please find the step to get QuickTest Professional 8.0 CBT Step by Step Tutorial and Evaluation copy of the software. The full CBT is 162 MB. You will have to create account to be able to download evaluation copies of CBT and Software.


3. How to handle the exceptions using recovery secnario manager in Qtp? You can instruct QTP to recover unexpected events or errors that occured in your testing environment during test run. Recovery scenario manager provides a wizard that guides you through the defining recovery scenario. Recovery scenario has three steps
1. Triggered Events 2. Recovery steps 3. Post Recovery Test-Run



3. How to handle the exceptions using recovery secnario manager in Qtp? You can instruct QTP to recover unexpected events or errors that occured in your testing environment during test run. Recovery scenario manager provides a wizard that guides you through the defining recovery scenario. Recovery scenario has three steps 1. Triggered Events 2. Recovery steps 3. Post Recovery Test-Run


4. what is the use of Text output value in Qtp? Output values enable to view the values that the application talkes during run time.When paramaterised, the values change for each iteration.Thus by creating output values, we can capture the values that the application takes for each run and output them to the data table.


5. How to use the Object spy in QTP 8.0 version? There are two ways to Spy the objects in QTP 1) Thru file toolbar —In the File ToolBar click on the last toolbar button (an icon showing a person with hat). 2) Tru Object repository Dialog —In Objectrepository dialog click on the button”object spy…” In the Object spy Dialog click on the button showing hand symbol. the pointer now changes in to a hand symbol and we have to point out the object to spy the state of the object if at all the object is not visible..or window is minimised then Hold the Ctrl button and activate the required window to and release the Ctrl button.


6. What is the file extension of the code file & object repository file in QTP? File extension of – Per test object rep :- filename.mtr – Shared Oject rep :- filename.tsr Code file extension id script.mts

7. Explain the concept of object repository & how QTP recognises objects?
Object Repository: displays a tree of all objects in the current component or in the current action or entire test( depending on the object repository mode you selected). we can view or modify the test object description of any test object in the repository or to add new objects to the repository. Quicktest learns the default property values and determines in which test object class it fits.If it is not enough it adds assistive properties, one by one to the description until it has compiled the unique description.If no assistive properties are available, then it adds a special Ordianl identifier such as objects location onthe page or in the source code.

8. What are the properties you would use for identifying a browser & page when using descriptive programming ?
“name” would be another property apart from “title” that we can use. OR We can also use the property “micClass”. ex: Browser(”micClass:=browser”).page(”micClass:=page”)….

9. What are the different scripting languages you could use when working with QTP ?
Visual Basic (VB),XML,JavaScript,Java,HTML

10. Give me an example where you have used a COM interface in your QTP project?

11. Few basic questions on commonly used Excel VBA functions. common functions are: Coloring the cell Auto fit cell setting navigation from link in one cell to other saving

12. Explain the keyword createobject with an example.
Creates and returns a reference to an Automation object syntax: CreateObject(servername.typename [, location]) Arguments servername:Required. The name of the application providing the object. typename : Required. The type or class of the object to create. location : Optional. The name of the network server where the object is to be created.

13. Explain in brief about the QTP Automation Object Model.
Essentially all configuration and run functionality provided via the QuickTest interface is in some way represented in the QuickTest automation object model via objects, methods, and properties. Although a one-on-one comparison cannot always be made, most dialog boxes in QuickTest have a corresponding automation object, most options in dialog boxes can be set and/or retrieved using the corresponding object property, and most menu commands and other operations have corresponding automation methods. You can use the objects, methods, and properties exposed by the QuickTest automation object model, along with standard programming elements such as loops and conditional statements to design your program.

14. How to handle dynamic objects in QTP? QTP has a unique feature called Smart Object Identification/recognition. QTP generally identifies an object by matching its test object and run time object properties. QTP may fail to recognise the dynamic objects whose properties change during run time. Hence it has an option of enabling Smart Identification, wherein it can identify the objects even if their properties changes during run time. Check this out- If QuickTest is unable to find any object that matches the recorded object description, or if it finds more than one object that fits the description, then QuickTest ignores the recorded description, and uses the Smart Identification mechanism to try to identify the object. While the Smart Identification mechanism is more complex, it is more flexible, and thus, if configured logically, a Smart Identification definition can probably help QuickTest identify an object, if it is present, even when the recorded description fails. The Smart Identification mechanism uses two types of properties: Base filter properties—The most fundamental properties of a particular test object class; those whose values cannot be changed without changing the essence of the original object. For example, if a Web link’s tag was changed from to any other value, you could no longer call it the same object. Optional filter properties—Other properties that can help identify objects of a particular class as they are unlikely to change on a regular basis, but which can be ignored if they are no longer applicable.

15. What is a Run-Time Data Table? Where can I find and view this table?
In QTP, there is data table used , which is used at runtime. -In QTP, select the option View->Data tabke. -This is basically an excel file, which is stored in the folder of the test created, its name is Default.xls by default.

16. How does Parameterization and Data-Driving relate to each other in QTP?
To datadrive we have to parameterize.i.e. we have to make the constant value as parameter, so that in each iteraration(cycle) it takes a value that is supplied in run-time datatable. Through parameterization only we can drive a transaction(action) with different sets of data. You know running the script with the same set of data several times is not suggestable, & it’s also of no use.

17. What is the difference between Call to Action and Copy Action.?
Call to Action : The changes made in Call to Action , will be reflected in the orginal action( from where the script is called).But where as in Copy Action , the changes made in the script ,will not effect the original script(Action)

18. Discuss QTP Environment.
QuickTest Pro environment using the graphical interface and ActiveScreen technologies - A testing process for creating test scripts, relating manual test requirements to automated verification features - Data driving to use several sets of data using one test script.

19. Explain the concept of how QTP identifies object.
During recording qtp looks at the object and stores it as test object.For each test object QT learns a set of default properties called mandatory properties,and look at the rest of the objects to check whether this properties are enough to uniquely identify the object. During test run,QT searches for the run time obkects that matches with the test object it learned while recording.

20. Differentiate the two Object Repository Types of QTP.
Object repository is used to store all the objects in the application being tested.2 types of oject repositoy per action and shared. In shared repository only one centralised repository for all the tests. where as in per action.for each test a separate per action repostory is created.

21. What the differences are and best practical application of each. Per Action: For Each Action, one Object Repository is created. Shared : One Object Repository is used by entire application

22. Explain what the difference between Shared Repository and Per_Action Repository
Shared Repository: Entire application uses one Object Repository , that similar to Global GUI Map file in WinRunner Per Action: For each Action ,one Object Repository is created, like GUI map file per test in WinRunner

23. Have you ever written a compiled module? If yes tell me about some of the functions that you wrote.
I Used the functions for Capturing the dynamic data during runtime. Function used for Capturing Desktop, browser and pages.

24. What projects have you used WinRunner on? Tell me about some of the challenges that arose and how you handled them.
pbs :WR fails to identify the object in gui. If there is a non std window obk wr cannot recognize it ,we use GUI SPY for that to handle such situation. .

25. Can you do more than just capture and playback?
I have done Dynamically capturing the objects during runtime in which no recording, no playback and no use of repository is done AT ALL. -It was done by the windows scripting using the DOM(Document Object Model) of the windows.

26. How long have you used the product?


27. How to do the scripting. Is there any inbuilt functions in QTP as in QTP-S. Whatz the difference between them? how to handle script issues?
Yes, there’s an in-built functionality called “Step Generator” in Insert->Step->Step Generator -F7, which will generate the scripts as u enter the appropriate steps. 28. What is the difference between check point and output value. I would like to add some stuff to Kalpana’s comments. It is as follows:- An outPut value is a value captured during the test run and entered in the run-time but to a specified location. EX:-Location in Data Table[Global sheet / local sheet]

29. IF we use batch testing.the result shown for last action only.in that how can i get result for every action. u can click on the icon in the tree view to view the result of every action

30. How the exception handling can be done using QTP
It can be done Using the Recovery Scenario Manager which provides a wizard that gudies you through the process of defining a recovery scenario. FYI.. The wizard could be accesed in QTP> Tools-> Recovery Scenario Manager …….

31. How do you test siebel application using qtp?

32. How many types of Actions are there in QTP? There are three kinds of actions: non-reusable action—an action that can be called only in the test with which it is stored, and can be called only once. reusable action—an action that can be called multiple times by the test with which it is stored (the local test) as well as by other tests. external action—a reusable action stored with another test. External actions are read-only in the calling test, but you can choose to use a local, editable copy of the Data Table information for the external action.

33. How do you data drive an external spreadsheet?


34. I want to open a Notepad window without recording a test and I do not want to use SystemUtil.Run command as well How do I do this?


U can still make the notepad open without using the record or System utility script, just by mentioning the path of the notepad “( i.e., where the notepad.exe is stored in the system) in the “Windows Applications Tab” of the “Record and Run Settings window. Try it out. All the Best.


1. . What are the Features & Benefits of Quick Test Pro(QTP)..?

1. Key word driven testing

2. Suitable for both client server and web based application

3. Vb script as the scriot language

4. Better error handling mechanism

5. Excellent data driven testing features


2. Where can I get Quck Test pro(QTP Pro) software.. This is Just for Information purpose Only.
Introduction to QuickTest Professional 8.0, Computer Based Training: Please find the step to get QuickTest Professional 8.0 CBT Step by Step Tutorial and Evaluation copy of the software. The full CBT is 162 MB. You will have to create account to be able to download evaluation copies of CBT and Software.

3. How to handle the exceptions using recovery secnario manager in Qtp?

You can instruct QTP to recover unexpected events or errors that occured in your testing environment during test run. Recovery scenario manager provides a wizard that guides you through the defining recovery scenario. Recovery scenario has three steps
1. Triggered Events 2. Recovery steps 3. Post Recovery Test-Run

4. what is the use of Text output value in Qtp?
Output values enable to view the values that the application talkes during run time.When paramaterised, the values change for each iteration.Thus by creating output values, we can capture the values that the application takes for each run and output them to the data table.

5. How to use the Object spy in QTP 8.0 version?

There are two ways to Spy the objects in QTP
1) Thru file toolbar —In the File ToolBar click on the last toolbar button (an icon showing a person with hat). 2) Tru Object repository Dialog —In Objectrepository dialog click on the button”object spy…” In the Object spy Dialog click on the button showing hand symbol. the pointer now changes in to a hand symbol and we have to point out the object to spy the state of the object if at all the object is not visible..or window is minimised then Hold the Ctrl button and activate the required window to and release the Ctrl button.

6. What is the file extension of the code file & object repository file in QTP?
File extension of
– Per test object rep :- filename.mtr – Shared Oject rep :- filename.tsr Code file extension id script.mts

7. Explain the concept of object repository & how QTP recognises objects?

Object Repository: displays a tree of all objects in the current component or in the current action or entire test( depending on the object repository mode you selected).
we can view or modify the test object description of any test object in the repository or to add new objects to the repository. Quicktest learns the default property values and determines in which test object class it fits.If it is not enough it adds assistive properties, one by one to the description until it has compiled the unique description.If no assistive properties are available, then it adds a special Ordianl identifier such as objects location onthe page or in the source code.

8. What are the properties you would use for identifying a browser & page when using descriptive programming ?
“name” would be another property apart from “title” that we can use. OR We can also use the property “micClass”. ex: Browser(”micClass:=browser”).page(”micClass:=page”)….

9. What are the different scripting languages you could use when working with QTP ?

Visual Basic (VB),XML,JavaScript,Java,HTML


10. Give me an example where you have used a COM interface in your QTP project?


11. Few basic questions on commonly used Excel VBA functions.
common functions are: Coloring the cell Auto fit cell setting navigation from link in one cell to other saving

12. Explain the keyword createobject with an example. Creates and returns a reference to an Automation object syntax: CreateObject(servername.typename [, location]) Arguments servername:Required. The name of the application providing the object. typename : Required. The type or class of the object to create. location : Optional. The name of the network server where the object is to be created.

13. Explain in brief about the QTP Automation Object Model. Essentially all configuration and run functionality provided via the QuickTest interface is in some way represented in the QuickTest automation object model via objects, methods, and properties. Although a one-on-one comparison cannot always be made, most dialog boxes in QuickTest have a corresponding automation object, most options in dialog boxes can be set and/or retrieved using the corresponding object property, and most menu commands and other operations have corresponding automation methods. You can use the objects, methods, and properties exposed by the QuickTest automation object model, along with standard programming elements such as loops and conditional statements to design your program.

14. How to handle dynamic objects in QTP?
QTP has a unique feature called Smart Object Identification/recognition. QTP generally identifies an object by matching its test object and run time object properties. QTP may fail to recognise the dynamic objects whose properties change during run time. Hence it has an option of enabling Smart Identification, wherein it can identify the objects even if their properties changes during run time. Check this out- If QuickTest is unable to find any object that matches the recorded object description, or if it finds more than one object that fits the description, then QuickTest ignores the recorded description, and uses the Smart Identification mechanism to try to identify the object. While the Smart Identification mechanism is more complex, it is more flexible, and thus, if configured logically, a Smart Identification definition can probably help QuickTest identify an object, if it is present, even when the recorded description fails. The Smart Identification mechanism uses two types of properties: Base filter properties—The most fundamental properties of a particular test object class; those whose values cannot be changed without changing the essence of the original object. For example, if a Web link’s tag was changed from to any other value, you could no longer call it the same object. Optional filter properties—Other properties that can help identify objects of a particular class as they are unlikely to change on a regular basis, but which can be ignored if they are no longer applicable.

15. What is a Run-Time Data Table? Where can I find and view this table?

In QTP, there is data table used , which is used at runtime.
-In QTP, select the option View->Data tabke. -This is basically an excel file, which is stored in the folder of the test created, its name is Default.xls by default.

16. How does Parameterization and Data-Driving relate to each other in QTP?

To datadrive we have to parameterize.i.e. we have to make the constant value as parameter, so that in each iteraration(cycle) it takes a value that is supplied in run-time datatable. Through parameterization only we can drive a transaction(action) with different sets of data. You know running the script with the same set of data several times is not suggestable, & it’s also of no use.



17. What is the difference between Call to Action and Copy Action.?
Call to Action : The changes made in Call to Action , will be reflected in the orginal action( from where the script is called).But where as in Copy Action , the changes made in the script ,will not effect the original script(Action)

18. Discuss QTP Environment.
QuickTest Pro environment using the graphical interface and ActiveScreen technologies - A testing process for creating test scripts, relating manual test requirements to automated verification features - Data driving to use several sets of data using one test script.

19. Explain the concept of how QTP identifies object. During recording qtp looks at the object and stores it as test object.For each test object QT learns a set of default properties called mandatory properties,and look at the rest of the objects to check whether this properties are enough to uniquely identify the object. During test run,QT searches for the run time obkects that matches with the test object it learned while recording.

20. Differentiate the two Object Repository Types of QTP.
Object repository is used to store all the objects in the application being tested.2 types of oject repositoy per action and shared. In shared repository only one centralised repository for all the tests. where as in per action.for each test a separate per action repostory is created.

21. What the differences are and best practical application of each.
Per Action: For Each Action, one Object Repository is created. Shared : One Object Repository is used by entire application


22. Explain what the difference between Shared Repository and Per_Action Repository
Shared Repository: Entire application uses one Object Repository , that similar to Global GUI Map file in WinRunner Per Action: For each Action ,one Object Repository is created, like GUI map file per test in WinRunner

23. Have you ever written a compiled module? If yes tell me about some of the functions that you wrote.
I Used the functions for Capturing the dynamic data during runtime. Function used for Capturing Desktop, browser and pages.


24. What projects have you used WinRunner on? Tell me about some of the challenges that arose and how you handled them. pbs :WR fails to identify the object in gui. If there is a non std window obk wr cannot recognize it ,we use GUI SPY for that to handle such situation.


25. Can you do more than just capture and playback?
I have done Dynamically capturing the objects during runtime in which no recording, no playback and no use of repository is done AT ALL. -It was done by the windows scripting using the DOM(Document Object Model) of the windows.

26. How long have you used the product?


27. How to do the scripting. Is there any inbuilt functions in QTP as in QTP-S. Whatz the difference between them? how to handle script issues?
Yes, there’s an in-built functionality called “Step Generator” in Insert->Step->Step Generator -F7, which will generate the scripts as u enter the appropriate steps.


28. What is the difference between check point and output value.
I would like to add some stuff to Kalpana’s comments. It is as follows:- An outPut value is a value captured during the test run and entered in the run-time but to a specified location. EX:-Location in Data Table[Global sheet / local sheet]


29. IF we use batch testing.the result shown for last action only.in that how can i get result for every action.
u can click on the icon in the tree view to view the result of every action


30. How the exception handling can be done using QTP
It can be done Using the Recovery Scenario Manager which provides a wizard that gudies you through the process of defining a recovery scenario. FYI.. The wizard could be accesed in QTP> Tools-> Recovery Scenario Manager …….


31. How do you test siebel application using qtp?



32. How many types of Actions are there in QTP?
There are three kinds of actions: non-reusable action—an action that can be called only in the test with which it is stored, and can be called only once. reusable action—an action that can be called multiple times by the test with which it is stored (the local test) as well as by other tests. external action—a reusable action stored with another test. External actions are read-only in the calling test, but you can choose to use a local, editable copy of the Data Table information for the external action.


33. How do you data drive an external spreadsheet?


34. I want to open a Notepad window without recording a test and I do not want to use SystemUtil.Run command as well How do I do this?
U can still make the notepad open without using the record or System utility script, just by mentioning the path of the notepad “( i.e., where the notepad.exe is stored in the system) in the “Windows Applications Tab” of the “Record and Run Settings window. Try it out. All the Best.