You are on page 1of 51

Do you know QTP!

Prepared By : Sreelesh Kunnath

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.

Saturday, April 7, 2012

Sreelesh Kunnath

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.

Saturday, April 7, 2012

Sreelesh Kunnath

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

Saturday, April 7, 2012

Sreelesh Kunnath

False Benefits-

Fewer tests will be needed

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

Saturday, April 7, 2012

Sreelesh Kunnath

What are the different tools available in the market (for functional testing). Rational Robot . Win Runner . QTP . Silk Test . QA Run . Web FT

Saturday, April 7, 2012

Sreelesh Kunnath

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
Saturday, April 7, 2012 Sreelesh Kunnath 7

What is the diff. between WR & QTPQTP Developed by MI Now HP Functionality testing on windows & web based applications It Supports .NET Technology Scripting language is VB-Script Active Screen Available in QTP QTP has data table to store script values Win Runner 7.0 Developed by MI Functionality testing on windows based application Does not support .NET Technology Scripting language is TSL Not Available Not available

QTP supports Multimedia, Main Frames, XML, J2EE It wont support It supports ERP such as SAP, Siebel 7.0, people Soft 8.8 But WR supports Siebel 6.0, people soft 6.0

Saturday, April 7, 2012

Sreelesh Kunnath

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
Saturday, April 7, 2012 Sreelesh Kunnath 9

Versions of QTP QTP 5.5 5.6 6.0 6.5 8.0 9.0 9.2 2002 Industry started from this version

Rapidly working on(8.0,,9.0)

10

Current Version

Saturday, April 7, 2012

Sreelesh Kunnath

10

Environment needs for QTP -

System Requirement Hardware Drive RAM OS service pack

: IBM-PC (or) Equivalent to P3 : 250MB of Free Memory space : 256MB of RAM : M/S windows 2000 server with 3-4 M/S windows XP with 1-2 SP M/S windows 2003 with no service pack

Web Browser 7.02, 7.1


Saturday, April 7, 2012

MS Internet Explorer 5.5 Netscape Navigator 6.11, 6.22, 6.23, AOL 8.0, 9.0
Sreelesh Kunnath 11

Overview of QTP 1) 2) 3) 4) 5) 6) 7) 8) 9) 10) 11) 12) 13) 14) 15) 16) 17)

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 Sreelesh Kunnath 12

Saturday, April 7, 2012

Overview of QTP
1) 2) 3) 4) 5) 6) 7) 8) 9)

Output Values Synchronization point QTP Run Modes Regular Expressions Descriptive Programming Environment Variables VB-Script Hoe to work with Functions Associated Library

Saturday, April 7, 2012

Sreelesh Kunnath

13

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

Saturday, April 7, 2012

Sreelesh Kunnath

14

Window Structure of QTP 1) 2) 3) 4) Test Pane Active Screen Data Table Debug Viewer

Saturday, April 7, 2012

Sreelesh Kunnath

15

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

Saturday, April 7, 2012

Sreelesh Kunnath

16

Add In Manager

Saturday, April 7, 2012

Sreelesh Kunnath

17

Architecture Of QTP 1) 2)

Execution Process in QTP Development of Automation Test


1) Recording 2) Writing 3) Function Generator

Saturday, April 7, 2012

Sreelesh Kunnath

18

Recording Modes of QTP -

There are three recording modes in QTP 1)Normal Recording Mode 2) Analog Recording Mode 3) Low Level Recording Mode

Saturday, April 7, 2012

Sreelesh Kunnath

19

Record a Test

Saturday, April 7, 2012

Sreelesh Kunnath

20

Record & Run Settings-

Saturday, April 7, 2012

Sreelesh Kunnath

21

Run a Test and Save Results-

Saturday, April 7, 2012

Sreelesh Kunnath

22

View Test Results-

Saturday, April 7, 2012

Sreelesh Kunnath

23

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 QTP1) Per Action (.mtr) 2) Shared Object Repository (.tsr)

Saturday, April 7, 2012

Sreelesh Kunnath

24

Open the Object Repository Dialog Box-

Saturday, April 7, 2012

Sreelesh Kunnath

25

Object SpyObject 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

Saturday, April 7, 2012

Sreelesh Kunnath

26

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 thiswindow(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 thiswindow(Paint).Activate Window(Paint).Winobject(colors).Virtual Button(RED) Window(Paint).Winobject(colors).Virtual Button(BLUE) window(Paint).Close Saturday, April 7, 2012 Sreelesh Kunnath 27

Check PointsCheck 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 are1) 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
Saturday, April 7, 2012 Sreelesh Kunnath 28

Checkpoint Types

Saturday, April 7, 2012

Sreelesh Kunnath

29

Inserting a Checkpoint During Recording-

Saturday, April 7, 2012

Sreelesh Kunnath

30

Insert a Checkpoint After Recording-

Saturday, April 7, 2012

Sreelesh Kunnath

31

Identifying a Failed Checkpoint-

Saturday, April 7, 2012

Sreelesh Kunnath

32

ActionsAction 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

Saturday, April 7, 2012

Sreelesh Kunnath

33

Data Driven TestTesting 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).SetSecureaxisitt DialogLogin.Close

After Parameterization
Dialog(Login).Activate Dialog(Login).WinEdit(Login name).Set DataTable(name, dtglobalsheet) Dialog(Login).WinEdit(Password). (password, dtglobalsheet) DialogLogin.Close Saturday, April 7, 2012 Sreelesh Kunnath 34

Using Data Sheet (Global, Local & Location)-

Saturday, April 7, 2012

Sreelesh Kunnath

35

Setting the Parameter Value-

Saturday, April 7, 2012

Sreelesh Kunnath

36

Test Results Iterations-

Saturday, April 7, 2012

Sreelesh Kunnath

37

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
Saturday, April 7, 2012 Sreelesh Kunnath 38

Object IdentificationBy 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

Saturday, April 7, 2012

Sreelesh Kunnath

39

Ordinal IdentifierBy 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

Saturday, April 7, 2012

Sreelesh Kunnath

40

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 are1) Base Filter Properties 2) Optional Filter Properties

Saturday, April 7, 2012

Sreelesh Kunnath

41

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

Saturday, April 7, 2012

Sreelesh Kunnath

42

QTP Test Run ModesIn QTP, we have 2 types of run modes1) Normal 2) Fast

Saturday, April 7, 2012

Sreelesh Kunnath

43

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
Saturday, April 7, 2012 5) Exception Sreelesh Kunnath Handling.etc 44

Using a Regular Expression-

Saturday, April 7, 2012

Sreelesh Kunnath

45

Some Regular ExpressionsExpression Period Asterisk Plus Brackets Char . * + [A-Z][a-z] [0-9] \w \W Digit \d \d{4} Description Matches any single character Matches zero to any number of occurrences of the preceding character Matches one to any number of occurrences of the preceding character Matches a range of characters Matches a range of numbers Matches any alphanumeric character including underscore Matches any non-alphanumeric character Matches any digit Matches exactly four digits

Saturday, April 7, 2012

Sreelesh Kunnath

46

Descriptive ProgrammingWithout 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 .

Saturday, April 7, 2012

Sreelesh Kunnath

47

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

Saturday, April 7, 2012

Sreelesh Kunnath

48

Best Practice and tips

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
Saturday, April 7, 2012 Sreelesh Kunnath 49

Comments & QueriesQueries are always welcome.

Saturday, April 7, 2012

Sreelesh Kunnath

50

Feedback-

-Please spend few minutes from your


valuable time to provide your feedback. -if helpful please mail sreelesh.kunnath@ust-global.com -if any query please mail sreelesh.kunnath@gmail.com

Saturday, April 7, 2012

Thanks & Happy Automation

Sreelesh Kunnath

51