You are on page 1of 50

QTP

Prepared ByAshish Kumar Srivastava


What is Automation-

 Test Automation is the use of software to control the execution of tests &
the comparison of results- actual with the predicted/expected.

 A software program that is used to test another software program, this is


referred to as Automated software testing.

 A third party tool is used to test the application.

 Use of automation tools reduces the test time as well as the cost.

Tuesday, August 12, 2008 Ashish Kumar Srivastava 2


Why Automation-

. Avoid the errors that human make when they get tired
after multiple repetitions.
. The test program wont skip any test by mistakes.
. Each feature test cycle will take less time & Required less
human intervention.
. Required for Easy cycle of Regression Testing.

Tuesday, August 12, 2008 Ashish Kumar Srivastava 3


Benefits of Test Automation-

. Allows more testing to be done


. Strengthen Test Cycle
. Testing is Consistent, repeatable
. Useful when new patches released
. Makes configuration testing easier
. Test battery can be continuously improved

Tuesday, August 12, 2008 Ashish Kumar Srivastava 4


False Benefits-

. Fewer tests will be needed


. It will be easier if it is automated
. Compensate for poor design
. No more Manual Testing

Tuesday, August 12, 2008 Ashish Kumar Srivastava 5


What are the different tools available in the market (for
functional testing)-

. Rational Robot

. Win Runner

. QTP

. Silk Test

. QA Run

. Web FT

Tuesday, August 12, 2008 Ashish Kumar Srivastava 6


Life Cycle Of Automation-

Analyze the Application

Select The Tool

Identify the session

Design/ Record Test Scripts

Run the test scripts

Finding & Reporting the defects


Tuesday, August 12, 2008 Ashish Kumar Srivastava 7
What is the diff. between WR & QTP-

QTP Win Runner 7.0


Developed by MI Now HP Developed by MI

Functionality testing on windows & web based Functionality testing on windows based application
applications
It Supports .NET Technology Does not support .NET Technology
Scripting language is VB-Script Scripting language is TSL
Active Screen Available in QTP Not Available
QTP has data table to store script values Not available

QTP supports Multimedia, Main Frames, XML, J2EE It won’t support

It supports ERP such as SAP, Siebel 7.0, people Soft But WR supports Siebel 6.0, people soft 6.0
8.8

Tuesday, August 12, 2008 Ashish Kumar Srivastava 8


Introduction to QTP -

. Developed by Mercury interactive But Now by HP


. Developed for web functionality
.QTP supports both web applications & windows applications
. QTP Developed in 2002
. Test Script developed on VB Script
. QTP supports Languages is
.NET. J2EE, Main Frame, XML,Java
ERP -> SAP, Seibel, People soft
. QTP Supports both Technical & Non Technical People
. QTP run on only windows platform not supporting UNIX, Linux etc

Tuesday, August 12, 2008 Ashish Kumar Srivastava 9


Versions of QTP -

QTP 5.5 2002


5.6
6.0 Industry started from this version
6.5
8.0
Rapidly working on(8.0,,9.0)
9.0
9.2 Current Version

Tuesday, August 12, 2008 Ashish Kumar Srivastava 10


Environment needs for QTP -

System Requirement : IBM-PC (or) Equivalent to P3

Hardware Drive : 250MB of Free Memory space

RAM : 256MB of RAM


OS : M/S windows 2000 server with 3-4 service
pack
M/S windows XP with 1-2 SP
M/S windows 2003 with no service pack

Web Browser : MS Internet Explorer 5.5


Netscape Navigator 6.11, 6.22, 6.23, 7.02, 7.1
AOL 8.0, 9.0

Tuesday, August 12, 2008 Ashish Kumar Srivastava 11


Overview of QTP -
 Testing Process of QTP
 Windows Structure of QTP
 Add Ins of QTP
 Architecture of QTP
 Execution process in QTP
 Development of Automation Test
 Recording Modes in QTP
 Object Repository
 Object Spy
 Transaction
 Virtual Object
 Check Points
 Actions
 Exception Handling
 Object identification
 Ordinal Identifier
 Smart Identification
 Output Values
 Synchronization point
 QTP Run Modes
 Regular Expressions
 Descriptive Programming
 Environment Variables
 VB-Script
 Hoe to work with Functions
Tuesday, August 12, 2008  Ashish Kumar Srivastava
Associated Library 12
Testing Process of QTP -

1) Record & Run Settings

2) Develop Automation Testing

3) Enhance/ Customize Automation test

4) Debug Automation Test

5) Execute Automation Test

6) Analyze Test Results

7) Report defects in bug tracking tool

Tuesday, August 12, 2008 Ashish Kumar Srivastava 13


Window Structure of QTP -

1) Test Pane
2) Active Screen
3) Data Table
4) Debug Viewer

Tuesday, August 12, 2008 Ashish Kumar Srivastava 14


Add Ins of QTP -
It gives information about the technology supported by the QTP
By default three Add Ins are there in QTP
1) ActiveX
2) VB
3) Web
Additional Add ins:
1) Java
2) Oracle
3) People soft
4) .NET
5) Terminal Emulator
6) SAP
7) Siebel

Tuesday, August 12, 2008 Ashish Kumar Srivastava 15


Add In Manager

Tuesday, August 12, 2008 Ashish Kumar Srivastava 16


Architecture Of QTP -

1) Execution Process in QTP


2) Development of Automation Test
1) Recording
2) Writing
3) Function Generator

Tuesday, August 12, 2008 Ashish Kumar Srivastava 17


Recording Modes of QTP -

There are three recording modes in QTP -

1)Normal Recording Mode


2) Analog Recording Mode
3) Low Level Recording Mode

Tuesday, August 12, 2008 Ashish Kumar Srivastava 18


Record a Test

Tuesday, August 12, 2008 Ashish Kumar Srivastava 19


Record & Run Settings-

Tuesday, August 12, 2008 Ashish Kumar Srivastava 20


Run a Test and Save Results-

Tuesday, August 12, 2008 Ashish Kumar Srivastava 21


View Test Results-

Tuesday, August 12, 2008 Ashish Kumar Srivastava 22


Object Repository-

Object Repository is nothing but a storage location. It contains the collection


logical name and physical description of a particular object.

Logical Name: For Naming Convention


Physical Description : is Nothing but expected physical properties
Two types of Object Repositories are available in QTP-

1) Per Action (.mtr)


2) Shared Object Repository (.tsr)

Tuesday, August 12, 2008 Ashish Kumar Srivastava 23


Open the Object Repository Dialog Box-

Tuesday, August 12, 2008 Ashish Kumar Srivastava 24


Object Spy-

Object spy is used to display or view all the physical properties and methods of an object or a
window based on the requirement.

Example: If window(“Login”). Exists Then


Msgbox(“Pass”)
else
Msgbox(“Fail”)
End If

Tuesday, August 12, 2008 Ashish Kumar Srivastava 25


Virtual Object-

Virtual Object is used to identify the properties of similar objects


in a particular Area.
Example: In normal recording if we select the paint brush
window, the script will look like this-
window(“Paint”).Activate
Window(“Paint”).Winobject(“colors”).Click 72,16
Window(“Paint”).Winobject(“colors”).Click 80,14
window(“Paint”).Close
If we are using Virtual object, the script will look like this-
window(“Paint”).Activate
Window(“Paint”).Winobject(“colors”).Virtual Button(“RED”)
Window(“Paint”).Winobject(“colors”).Virtual Button(“BLUE”)
window(“Paint”).Close

Tuesday, August 12, 2008 Ashish Kumar Srivastava 26


Check Points-

Check Point is a verification point that compares the current value of the
specified property with the expected value for that property.
There are 9 types of check points are available in QTP.
They are-
1) Standard Check Point
2) Text/ Text Area Check Point
3) Bitmap Check point
4) Database Check Point
5) Table Check Point
6) Page Check Point
7) XML Check Point
8) Image Check Point
9) Accessibility Check Point

Tuesday, August 12, 2008 Ashish Kumar Srivastava 27


Checkpoint Types

Tuesday, August 12, 2008 Ashish Kumar Srivastava 28


Inserting a Checkpoint During Recording-

Tuesday, August 12, 2008 Ashish Kumar Srivastava 29


Insert a Checkpoint After Recording-

Tuesday, August 12, 2008 Ashish Kumar Srivastava 30


Identifying a Failed Checkpoint-

Tuesday, August 12, 2008 Ashish Kumar Srivastava 31


Actions-

Action is nothing but a logical portion to entire script file


based on the requirement. Each and every action should
have meaningful result.
Types of Actions:
1) Regular (By default)
2) Reusable
3) External
How to work with Actions:
1) Call to copy of Action
2) Call to Existing Action

Tuesday, August 12, 2008 Ashish Kumar Srivastava 32


Data Driven Test-
Testing the same application with multiple sets of data.
How to use parameterization:
Ex:
Before parameterization
Dialog(“Login”).Activate
Dialog(“Login”).WinEdit(“name”).Set ”Axis”
Dialog(“Login”).WinEdit(“Password).SetSecure”axisitt”
Dialog”Login”.Close
After Parameterization
Dialog(“Login”).Activate
Dialog(“Login”).WinEdit(“Login name”).Set DataTable(”name”, dtglobalsheet)
Dialog(“Login”).WinEdit(“Password). (”password”, dtglobalsheet)
Dialog”Login”.Close

Tuesday, August 12, 2008 Ashish Kumar Srivastava 33


Using Data Sheet (Global, Local & Location)-

Tuesday, August 12, 2008 Ashish Kumar Srivastava 34


Setting the Parameter Value-

Tuesday, August 12, 2008 Ashish Kumar Srivastava 35


Test Results Iterations-

Tuesday, August 12, 2008 Ashish Kumar Srivastava 36


Exception Handling-

It enables Quick test to detect and handle when unexpected


error occurred during execution time.

Types of Exception Handling:

1) Popup Exception Handling

2) Object State Exception Handling

3) Test Run Exception Handling

4) Application Crash

Tuesday, August 12, 2008 Ashish Kumar Srivastava 37


Object Identification-

By using object identification we can map “customer user


defined object” to “standard Class”.

Two types of properties are their in object Identification:

1) Mandatory Properties
2) Assistive properties

Tuesday, August 12, 2008 Ashish Kumar Srivastava 38


Ordinal Identifier-
By using ordinal identifier options quick test able to identify an
object under ordinal identifier.

Three Components are available in ordinal identifier


1) Index
2) Location
3) Creation time

Tuesday, August 12, 2008 Ashish Kumar Srivastava 39


Smart Identification-

Quick test unable to identify the object, it is change randomly.


To identify such object we need to use Smart Identification.

Two properties are available in Smart identification


They are-
1) Base Filter Properties
2) Optional Filter Properties

Tuesday, August 12, 2008 Ashish Kumar Srivastava 40


Synchronization Point-

Synchronization point maintains the time coordination


between testing process and your application process.

There are 4 types of synchronization points:


1) Sync
2) Wait, wait(5) or wait 5
3) Wait Property
4) Exist

Tuesday, August 12, 2008 Ashish Kumar Srivastava 41


QTP Test Run Modes-

In QTP, we have 2 types of run modes-

1) Normal

2) Fast

Tuesday, August 12, 2008 Ashish Kumar Srivastava 42


Regular Expressions-

It enables quick test to identify test string with varying value


(varying means changing)

Regular Expressions can be used in the following areas:

1) Check Points

2) In parameterization

3) Data Driven test

4) Actions

5) Exception Handling….etc

Tuesday, August 12, 2008 Ashish Kumar Srivastava 43


Using a Regular Expression-

Tuesday, August 12, 2008 Ashish Kumar Srivastava 44


Some Regular Expressions-

Expression Char Description


Period . Matches any single character
Asterisk * Matches zero to any number of occurrences of the
preceding character

Plus + Matches one to any number of occurrences of the


preceding character

Brackets [A-Z][a-z] Matches a range of characters


[0-9] Matches a range of numbers
\w Matches any alphanumeric character including
underscore

\W Matches any non-alphanumeric character

Digit \d Matches any digit


\d{4} Matches exactly four digits

Tuesday, August 12, 2008 Ashish Kumar Srivastava 45


Descriptive Programming-

Without using the object repository test engineer can develop


automation test in this particular accept, we need to use a
technique called as descriptive programming.

Script:

Dialog(“test:=Login”).Activate
Dialog(“text;=Login”).wineidt(“attached text:= Login name”). Set “Axisitt”
Dialog(“text:=Login”).wineidt(“attached text:= Password”). Set “88888” .
Dialog(“text:=Login”).Close

Tuesday, August 12, 2008 Ashish Kumar Srivastava 46


How to work with Environmental variables-

It is a special type of variable which is use to expose the


data related to environment.
Environment Variables

Built In user defined

Internal External

Tuesday, August 12, 2008 Ashish Kumar Srivastava 47


 VB Script
 Associated library
 How to work with methods
 How to work with functions
 Back End testing
 How to work with Win Runner
 How to connect Quality center

Tuesday, August 12, 2008 Ashish Kumar Srivastava 48


Comments & Queries-

Queries are always welcome.

Tuesday, August 12, 2008 Ashish Kumar Srivastava 49


Feedback-

-Please spend few minutes from your


valuable time to provide your feedback.

-It will help us to improve in next sessions.

Thanks & Happy Testing..

Tuesday, August 12, 2008 Ashish Kumar Srivastava 50

You might also like