+ All Categories
Home > Business > QTP Slides Presentation.

QTP Slides Presentation.

Date post: 21-Aug-2015
Category:
Upload: tjdhans
View: 14,934 times
Download: 2 times
Share this document with a friend
54
PREVIOUSLY MERCURY PREVIOUSLY MERCURY INTERACTIVE PRODUCT INTERACTIVE PRODUCT NOW TAKEN OVER BY HP NOW TAKEN OVER BY HP
Transcript

PREVIOUSLY MERCURY PREVIOUSLY MERCURY INTERACTIVE PRODUCTINTERACTIVE PRODUCT

NOW TAKEN OVER BY HPNOW TAKEN OVER BY HP

WHY QTP?• MORE USER FRIENDLINESS• MORE FEATURES – MORE

CHECKPTS• BEST FOR .NET AND OTHER WEB

BASED APPLICATION• KEYWORD DRIVEN TESTING

SOLUTION

DIFFERENT PANES IN QTP

• TEST PANE – SCRIPTS ARE GENERATED

• ACTIVE SCREEN – SNAP SHOTS• DATA TABLE – PARAMETRIZATION• DEBUGGER – BREAKPOINTS,

WATCHLIST, COMMANDS

WHAT TYPE OF TOOL IS QTP

• RECORD AND PLAYBACK TOOL• IT HAS ADDITIONAL FEATURES LIKE

SYNC PT, CHECK PT, OUTPUT VALUES• IT HAS STEP GENERATOR – BUILT IN

FUNCTIONS• IT HAS FUNCTION DEFINITION

GENERATOR – USER DEFINED FUNCTIONS

ADD-INS• ADD-INS ARE SIMILAR TO HEADER FILES IN C

LANGUAGE• THEY ARE INCLUDED AT THE BEGINNING OF

TESTING SESSIONS SO THAT CLASSES, FUNCTIONS OF PARTICULAR APPLICATION ARE LEARNT BY QTP

• FOR TESTING JAVA APPLICATION, JAVA ADDIN HAD TO BE INCLUED.

• ADDIN MANAGER ENABLES TO MANAGE THE ADDINS INCLUSION.

TYPES OF VIEWS IN TEST PANE

• TWO TYPES• KEYWORD VIEW – ACTIONS ARE

GENERATED IN TABULAR FORMAT SIMILAR TO MANUAL TEST CASES

• EXPERT VIEW – ACTIONS ARE GENERATED IN VB SCRIPTING

MODES OF RECORDING• NORMAL MODE – RECORDING BASED

ON PROPERTIES OF GUI• ANALOG MODE – MOUSE MOVEMENTS,

CLICKS, KEYBOARD STROKES• LOW LEVEL – COMBINATION OF ABOVE

TWO – MAINLY FOR RECORDING CUSTOM OBJECTS

OBJECT RECOGNITION• MANDATORY PROPERTIES – QTP

ALWAYS LEARNS FOR DIFFERENTIATING OBJECTS

• ASSITIVE PROPERTIES – OPTIONAL PROPERTIES LEARNT WHEN MANDATORY COULDN’T ABLE TO DIFFERENTIATE

OBJECT RECOGNITION• ORDINAL IDENTIFIER – THIS IS USED

WHEN BOTH MANDATORY AND ASSITIVE COULDN’T HELP TO DIFFERENTIATE OBJECTS

• ORDINAL IDENTIFIER USES LOCATION INDICATOR AND INDEX INDICATOR TO DIFFERENTIATE OBJECTS

OBJECT IDENTIFICATION

• OBJECT IDENTIFICATION IS ANOTHER COMPONENT IN QTP SIMILAR TO GUI CONFIGURATION IN WINRUNNER

• THIS IS USED TO CONFIGURE THE MANDATORY AND ASSITIVE PROPERTIES DEPENDING ON APPLICATION TO BE TESTED.

OBJECT REPOSITORY• OBJECT REPOSITORY IS SIMILAR TO GUI

MAP FILE IN WINRUNNER• STORES THE PROPERTIES AND VALUE

OF THE OBJECTS LEARNT DURING RECORDING

• WHILE PLAYBACK OF SCRIPTS, QTP REFERS OBJECT REPOSITORY FOR IDENTIFYING THE OBJECTS

OBJECT REPOSITORY• TWO TYPES – PER ACTION, SHARED

REPOSITORY• SHARED IS COMMONLY USED AS SAVES

TIME• LOAD”PATH OF REPORSITORY” IS

FUNCTION USED TO LOAD REPOSITORY RELATED FILES DURING RUNTIME

WHAT ARE TYPES OF PROPERTIES?

• TEST OBJECT – PROPERTIES LEARNT BY QTP WHILE RECORDING THAT IS USED FOR MAPPING WITH ACTUAL OBJECTS

• RUNTIME – PROPERTIES OF ACTUAL OBJECT IN THE APPLICATION

OBJECT SPY• OBJECT SPY IS A COMPONENT IN QTP

THAT HELPS TO LIST THE TEST OBJECT AND RUNTIME PROPERTIES OF THE GUI

• LISTS THE METHODS AND SYNTAX THAT COULD BE IMPLEMENTED ON THAT PARTICULAR OBJECT

• LISTS THE HEIRARCHY OF THE OBJECT IN THE AUT

CHECK POINTS• STANDARD CHECK POINT – STANDARD

PROPERTIES OF GUI INCLUDES TABLES• BITMAP CHECK POINT – VERIFIES IMAGES AND

BITMAPS• TEXT CHECKPT – WORKS ONLY IN CERTAIN

APPLICATION, BEST TO USE STANDARD CHECK PT

• XML CHECK PT- USED TO VERIFY XML FILES• DATABASE CHECK PT – CUSTOM AND

DEFAULT CHECKS ON DATABASE

CHECK POINTS• ACCESSIBILITY CHECK PT – USED

TO VERIFY WHETHER THE PAGE IN THE WEBSITE IS BUILD AS PER W3 CONSORTIUM STANDARD OR NOT

SMART IDENTIFICATION• MAINLY USED FOR VERIFYING DYNAMIC

OBJECTS• THIS CAPTURES BASE FILTER AND

OPTIONAL FILTER PROPERTIES INORDER TO RECOGNIZE THE DYNAMIC OBJECTS

• CAN BE ENABLED THROUGH TOOLS > OBJECT IDENTIFICATION

OUTPUT VALUES• OUTPUTS THE VALUE OF PROPERTIES

OF GUI DURING RUNTIME• CAN BE VIEWED IN RUNTIME

DATATABLE IN RESULTS WINDOW• MAINLY USED TO GET COLLECTION OF

PROPERTY VALUE OF DYNAMIC OBJECTS

PARAMETRIZATION• PARAMETRIZATION - PASSING

MULTIPLE SET OF VALUES FOR TESTING

HOW CAN WE PARAMETRIZE?

• IDENTIFY THE FIXED VALUE THAT NEEDS TO BE PARAMETRIZED

• REPLACE WITH PARAMETER• PASSING VALUE FROM DATA

TABLE

WHAT IS DATA TABLE• INBUILT XL SHEET IN QTP FOR PASSING

VALUES TO PARAMETERS IN RUNTIME• TWO SHEETS – GLOBAL AND ACTION• GLOBAL – DATAS ARE PASSED TO ALL

ACTIONS WITHIN THE SCRIPT• ACTION – DATAS ARE PASSED TO ONLY

PARTICULAR ACTION

WAYS TO PARAMETRIZE..

• DATA TABLE PARAMETER – PASSING THROUGH DATA TABLE

• ACTION/COMPONENT PARAMETER – BY DECLARING INPUT AND OUTPUT PARAMETER IN ACTION PROPERTIES

• ENVIRONMENT PARAMETER – EXTERNAL HOST, URL, VUSER ETC…

• RANDOM PARAMETER – WITHIN NUMERIC RANGE

Synchronization• Problem due to mismatch between tool

time and application time is sorted using synchronization

• Wait(seconds)• Exist – returns boolean value• Waitproperty(property, value, timeout)• Sync – waits until all objects are

downloaded in a webpage

TYPES OF ACTIONS• REUSABLE ACTION – THAT CAN BE

CALLED TO ANY SCRIPT• NON REUSABLE – THAT CAN BE

CALLED TO ANY ACTION WITHIN THE SCRIPT AND ONLY ONCE

• EXTERNAL – REUSABLE ACTIONS BUT ARE READ ONLY

CALLING ACTION• INSERT CALL TO EXISITING ACTION –

CALLS A REUSABLE ACTION, BUT ANY CHANGES WILL BE REFLECTED ON ORIGINAL CALLED ACTION

• INSERT CALL TO COPY OF ACTION – CALLS A REUSABLE ACTION, BUT CHANGES ARE NOT REFLECTED ON ORIGINAL CALLED ACTION

TRANSACTIONS• TRANSACTIONS ARE NOTHING BUT

TIMER FOR MEASURING TIME TAKEN FOR EXECUTING PARTICULAR TASK

• SERVICES.START TRANSACTION “T1”• SERVICES.END TRANSACTION “T1”• CAN BE USED ANY NUMBER OF TIMES

DEBUGGING• DEBUGGING – FINDING ERRORS IN THE SCRIPT• BREAKPOINTS – POINT WE CREATE IN THE

SCRIPT WHERE THE EXCUTION OF SCRIPT IS PAUSED

• WATCHLIST – MAINLY FOR BETTER DEBUGGING. USED TO VIEW THE VALUES OF THE PARAMETERS/VARIABLES DURING RUNTIME

HOW TO HANDLE CUSTOM OBJECTS???

• SOLUTION IS VIRTUAL OBJECT WIZARD

• THIS HELPS TO MAP THE CUSTOM OBJECT WITH THE STANDARD GUIS. HENCE WHILE RECORDING QTP RECOGNIZES EVEN THESE NON STANDARD OBJECTS

HANDLE THE CHANGING WINDOWS/ OBJECT

PROPERTIES??• THE SOLUTION IS “REGULAR

EXPRESSION”• REGULAR EXPRESSION IS AN

EXPRESSION THAT MAKES QTP TO RECOGNIZE THE OBJECTS THAT HAVE VARYING PROPERTY DURING RUNTIME

REGULAR EXPRESSION• \ – SYMBOL TO INDICATE IT IS AN

REGULAR EXPRESSION• . – PERIOD MATCHES ONE CHARACTER !

WELCOME. CAN MATCH WELCOMES, WELCOMED

• * - MATCHES ANY NUMBER OF CHARACTER !W*-WHO, WE

• [] – TO INDICATE COLLECTION LIKE • !W[E3] – WE, W3

REGULAR EXPRESSIONS

• - INDICATES RANGE LIKE [0-9] • ^ INDICATES EXCLUSION LIKE [^A-Z]

WILL NOT ACCEPT UPPER CASE ALPHABETS

• + indicates one or more occurrence of preceding character ca+r – car, caaar and not cr

• \w matches all characters except alphanumeric and underscore

WHAT ARE EXCEPTIONS???

• EXCEPTIONS ARE NOTHING BUT UNEXPECTED ERRORS THAT CAUSES HINDERANCE DURING THE EXECUTION OF SCRIPTS

• COULD BE DUE TO POP UPS, OBJECT PROPERTY CHANGE, APPLICATION CRASH, TEST RUN

HOW TO HANDLE EXCEPTION???

• SIMPLE USING RECOVERY SCENARIO MANAGER.

• RECOVERY SCENARIO MANAGER IS A WIZARD THAT GUIDES STEPS TO HANDLE EXCEPTIONS

RECOVERY SCENARIO MANAGER

• THREE STEPS• TRIGGER EVENT – DEFINE THE

EXCEPTION• RECOVERY OPERATION – DEFINING

THE HANDLER FUNCTION• POST RECOVERY OPERATION.

FUNCTION? PROCEDURE???

• FUNCTION CAN BE INBUILT OR USER DEFINED. IT IS ONE THAT RETURNS A VALUE

• PROCEDURE IS SIMILAR TO FUNCTION BUT DOESN’T RETURN VALUE

SOME IMPORTANT FUNCTIONS -

SetTOProperty

• SETTOPROPERTY()• PROPERTYNAME, VALUE• DIALOG(“Login”).WinEdit(“Userna

me”).SETTOPROPERTY(“Enabled”,”True”)

GETTOPROPERTY()• GetTOProperty( propertyname)• Returns the value of the property• Example,• A =

Dialog(“Login”).Winbutton(“OK”).GetTOProperty(“Enabled”)

GETTOPROPERTIES( )• GetTOProperties()• Lists all the properties and

property values of particular object

GetROProperty()• GetROProperty(Propertyname)• Returns the runtime property of

the particular object• Dim a • A =

dialog(“login”).Winbutton(“OK”).GETROPROPERTY(“nativeclass”)

Can we connect database through

QTP???• Answer is yes not through wizard but

through scripting• Set a =

createobject(“ADODB.connection”)• A.open”DSN = Employee.mdb, Username

= xxx, Password = xxxx”• Set b =

createobject(“ADODB.RecordSet”)• B.open”Select * from table1”,a• Msgbox b.recordcount

File handling• Using QTP it is possible to pass datas from

various files and write data into file• Example to read data from a file• Set a =

createobject(“Scripting.FileSystemObject”)• Set b = a.opentextfile(“path”,0/1/8,”true”)• Str = b.readline• 0 – write mode 1- read mode 8 – append• True/false – file exist or create new

ChildObjects()• This function is used to return the

list of all objects within the window• Example to count no of objects

within dialog• Set c =

dialog(“Login”).childobjects()• Msgbox c.count

POPUP()• POPUP(“MSG”,WAIT TIME,

“TITLE”,BUTTON)• EXAMPLE • SET A =

POPUP(“HI”,10,”GREETING”,4)• A WILL BE RETUNED VALUE 6(YES)

AND 7(NO)

MAXIMIZE WINDOW• MAXIMIZE IS KEYWORD FOR

MAXIMIZING WINDOW/DIALOG• FULLSCREEN IS THE KEYWORD

FOR MAXIMIZING THE BROWSER

DATATYPE CONVERSION

• CINT() – CONVERTS VAR TO INTEGER

• CLNG() – CONVERTS CURRENCY TO INTEGER

• CCUR()- CONVERTS TO CURRENCY FORMAT

IS IT POSSIBLE TO OPEN APPLICATION THROUGH

SCRIPTING???• YES!!!• SYSTEMUTIL.RUN “PATH” FOR

OPENING ANY APPLN• INVOKE “PATH” FOR EXE

APPLICATION• EXECUTE “PATH”

USER DEFINED FUNCTION

• FUNCTIONS THAT ARE REPEATED FOR MANY TIMES • EXAMPLE • PUBLIC FUNCTION SUM(X, Y, Z)• Z = X+Y• END FUNCTION• DIM A, B, C• A = INPUTBOX (“ENTER A”)• B = INPUTBOX(“ENTER B”)• SUM (A,B,C)• MSGBOX C

FRAMEWORKS• FRAMEWORKS ARE SET OF

DEFINED RULES FOR AUTOMATING A TESTING PROCESS

• IT COULD BE SAID AS AUTOMATION TEST APPROACH

FRAMEWORKS• LINEAR FRAMEWORK – RECORDING,

ENHANCEMENT , PLAYBACK• HERE U CREATE SCENARIOS, DO

RECORDING BASED ON SCENARIOS, ENHANCEMENT IS DONE FOR VERIFICATIONS, AND PLAYBACK FOR EXECUTION

FRAMEWORK• DATA DRIVEN – HERE AN

EXTERNAL DATABASE IS MAINTANINED FOR PASSING VALUES TO THE ACTIONS IN QTP

• VALUES ARE COMPLETELY PASSED ONLY THRO THIS DATA SETS

FRAMEWORK• KEYWORD DRIVEN – USING THE

MANULLY ENTERED TABLE THAT DEFINES TESTOBJECT, OPERATION, DATA AND DESCRIPTION, VB SCRIPTS ARE AUTOMATICALLY GENERATED BY QTP

FRAMEWORK• DESCRIPTIVE PROGRAMMING – IT IS A

CONCEPT OF EXECUTION OF SCRIPTS WITHOUT THE REFERENCE OF OBJECT REPOSITORY

• DIALOG(“CLASS = DIALOG”,”CAPTION = Login”).Winbutton(“class = Button”,”Text = OK”).Click

FRAMEWORKS• FUNCTIONAL/MODULAR – HERE

THE ACTIONS ARE DECLARED AS USER DEFINED FUNCTIONS

• THESE FUNCTIONS ARE CALLED WHEREVER NEEDED.

FRAMEWORK• HYBRID FRAMEWORK – MIX OF

ANY OF THE ABOVE FRAME WORKS ARE CLASSED AS HYBRID.

• DEPENDING ON COMPLEXITY OF THE APPLICATION, MIXES ARE CHOSEN.


Recommended