You are on page 1of 39

Quick Test Professional 9.

2
Testing Process

 Preparing to Record
 Recording
 Enhancing a Test
 Debugging
 Running the Test and Analyzing the Results
 Reporting Defects
Add-in Manager

 Default Add-ins
– ActiveX
– Visual basic
– Web

 Other Add-Ins
– Siebel
– Java
– SAP
– Oracle
– .Net and many more
Quick Test Professional - Record &
Run Modes

 Recording Modes
– Normal
– Analog
– Low level

 Run Modes
– Normal
– Fast
QTP Window
Create a Test

Objectives
 Create a basic test from a manual test case.
 Run a test and check for errors.
The Object Repository

• Object repository dialog box


displays a test tree of all
objects in the current action or
the entire application.
•Using Object repository we
can
a) Identify the Object
b) View the Object Properties
Object Spy

 Using the Object Spy,


we can view the
properties of any
Object in the open
application.
 We can also view
Object Methods.
How Quick Test Recognizes Objects

 For each object class, QTP has a default set


of properties that it always learns.
1.Mandatory Properties.
2.Assistive properties.
3.Ordinal Identifier.
 Usually, only a few properties are needed to
uniquely identify an object.
Synchronization

 Synchronization point enables the anticipated time


problems between the application and QTP.
 A progress bar reaches 100% completion.
 A status message appears.
 A button becomes enabled.
 A window opens and is ready for data entry.
 A pop-up message appears in response to an
operation.
How to synchronize the Test

 We can synchronize the test by


1.Inserting a synchronization point
Insert  Step  Synchronization point
Window(“Flights”).WinButton(“Update order”).WaitProperty”enabled”,1,1000

2.Adding Exist and Wait statements


status=Window(“Flights”).Dialog(“Flights Table”).Exist
Wait(10)
Checkpoints

 A checkpoint is a verification point that compares a


current value for a specified property with the
expected value for that property.
 We can Insert checkpoint
1.From Menu
Insert  Checkpoint  Standard Checkpoint
2.From Keyword view
3.From the Active Screen
Checkpoint Types

1.Standard Checkpoint
2.Image Checkpoint
3.Table Checkpoint
4.Page Checkpoint
5.Text Checkpoint
6.Text Area Checkpoint
7.Bitmap Checkpoint
8.Database Checkpoint
Insert A Checkpoint From The
Active Screen
 A checkpoint can be added
after a test is created.
 Use the Active Screen to
select the field on which the
checkpoint will be added.
 Right-click on the
appropriate field and
choose “Insert Standard
Checkpoint”.
Regular Expressions

 Regular expressions enable Quick Test to Identify


Objects and text strings with varying values.
Use a Regular Expression

 A regular expression is a string that


specifies a complex search phrase.
By using
 special characters you define the
conditions of the search.
 Note: There are 4 steps to ensure that
a regular expression is inserted
correctly.
 From the Checkpoint Properties
window, ensure Constant is enabled
and click on the note paper icon.
 Check Regular Expression checkbox.
 If QTP sees there are characters that
can be misconstrued as a regular
expression, it will ask you to treat it
as a literal character. Generally, you
will answer No.
 Add the regular expression. For
example, Figure 6-6 will use [A-Z a-
z]+.
Parameters

 Objectives
 Describe and use multiple parameter types.
 Drive data in multiple iterations.
 Analyze errors during iterations.
 Parameterize a checkpoint.
Input Parameters For Data driven
Tests
 Input Parameters For Data Driven Tests
 A data-driven test is one that runs a set of user
actions with multiple input values. Data driving
allows one script to test application functionality
with many sets of data.
 Automated data driven testing frees you to
perform more tests, thus increasing test coverage.
Speed, repeatability, free resources to do other
kinds of quality control.
Input Parameter

 Input Parameters allow you to


replace a static, recorded
value in a step with a dynamic
placeholder (parameter),
which represents an
expandable range of values.
 Input parameter names and
their values are located in
QuickTest’s Data Table.
 Input parameter values are
input into the application from
some outside data source.
Steps to Create An Input Parameter

 To create an input data table


parameter:
 Select the step in the Keyword
View that contains the recorded
input value.
 From the Value column, click on
the current value.
 Click on the parameterize
button.
 The Constant value appears in
the Value Configuration Options
dialog box.
Set the Parameter Value

 In the VALUE
CONFIGURATION OPTIONS
dialog, select the Parameter
radio button and ensure that
Data Table is selected from the
drop-down list.
 From the Name drop down list,
enter a unique column name to
create a new column in your
data table or choose an existing
column name from the data
table.
 Use the default Global data
sheet to store values.
 Enter the values that QTP will
input after the test executes.
Supply Data to the Parameter

 The design-time table is the


central location for storing input
parameter values.
 The number of rows in the data
table will cause the same
number of test execution
iterations to be run.
 As a default, the design-time
data table is displayed at the
bottom of the QuickTest screen.
 If you want to show or hide the
data sheet, click on the icon in
the toolbar.
Verify The Test Run

 View the Test Results


window to verify that each
of the rows from the
Design Time Data Table
was used during the test
run.
 Expand the tree for each
iteration (Row#) to view
specific information about
the execution of the
specific row.
Parameterize a Checkpoint

 You can use parameterized


expected values to make
your checkpoints dynamic.
They Can be set on:
 An object property in the
Object Repository.
 A checkpoint on a
parameterized field.
A Test with Multiple Actions

 Actions can be divided into


logical sections, like the
main sections of a
transaction, or by specific
business processes.

 When you create a new test,


it contains one action. By
dividing your tests into
multiple actions, you can
design more modular and
efficient tests.
Types of Actions

 There are two kinds of actions:


Regular (Non-reusable)
Reusable

 Tests that contain reusable actions can be used:


Locally
Externally
Insert Call to a New Action

 You can add a new action


during or after recording.
 Select Insert ? New Action
from the QuickTest main
menu. The Insert New
Action window appears.
 Or use the “lego” icon on the
toolbar to insert new action.
Using Parameterized Data

 Test data can be passed from


one test to another test using
the value of an input parameter.

 This creates a data flow


between business processes.

 The value passed from one


business process to another will
come from the Data Table.

 Be aware of any data


dependencies that occur within
the business process.
Copied, Existing or New Action

 After reusable actions are


created, they can be called
into a “Main Calling” test
in three ways:
 Call to New Action
 Call to Copy of Action
 Call to Existing Action
Set Actions as Reusable

 Create a reusable
action from the Action
properties dialog.
 Check the checkbox
and click OK. A
message will appear
stating a description of
a reusable
 action.
Call An Action

 You can do number of things with a


reusable action, such as:
 Call it multiple times within a test.
 Call it from other tests.
 View the components of the action tree
(you cannot modify them except in the
original script)
 Insert a call to an external action (the
action is inserted in read-only format)
 as local editable copy
 use the (read only) data from the
original
 action
 Insert copies of non-reusable actions
into your test, but you cannot insert calls
to non-reusable actions.
Recovery Scenarios

 To instruct Quick test to recover from unexpected


events and errors that occur in the testing
environment during the run session.
 A Recovery scenario consists of
a) Trigger Event
b) Recovery Operation
c) Post Recovery Run Option
Recovery Scenario Wizard

 We can create the recovery scenario using recovery scenario


wizard.
 Recovery scenario wizard consists of
a) Define the trigger event that interrupts the run session
b) Specifying the recovery operations required to continue
c) Choosing a post recovery test run operation
d) Specifying a name and description for the recovery scenario
e) Specifying whether to associate the recovery scenario to the
current test and / or to all new tests.
Recovery Scenario Wizard
Creating Tests without Object Repository

 We can use programmatic descriptions to perform an operation on an


object that is not stored in the Object Repository.
 Types of Programmatic descriptions
a) We can list the set of properties and values that describe the object
directly in a test statement.
e.g: Dialog(“name:=Login”).WinEdit(“attachedtext:=agentname”).Set”impetus”
b) We can add a collection of properties and values to a description
object and then enter the description object in the statement.
Set myobject=Description.Create()
myobject(“attachedtext”).value:=“agentname”
myobject(“html tag”).value:=“a”
Dialog(“name:=Login”).WinEdit (myobject).Set”impetus”
Enhance TestCases With
Descriptive Programming
 Interact with Test Objects not stored in the Object Repository
– You can also instruct QT to perform methods on objects
without referring to the object repository without referring to
the object’s logical name. To do this you provide QT with a
list of properties and values that QT can use to identify the
object or objects on which you want to perform a method
Enter Programmatic Descriptions
Directly into Test Statements
 You can describe an object directly in a test statement by
specifying property : = value pairs describing the object
instead of specifying an object’s logical name.
 Syntax:-
 TestObject(“PropertyName1:=PropertyValue”, “…”,
“PropertyNameX:=PropertyValueX”)
 Where “Test Object” is test object class
Contd….
 PropertyName is PropertyValue
 i.e. the test object property and its value . Each property:=
value pair should be separated by commas and quotation
marks.
 For Example: Window(“Text:=Myfile.txt-Notepad”).Move 50,50
 If you want to use the same programmatic description
several times in one test, you may want to assign the
object you create to a variable.
 For Ex:- Set MyWin := Window(“Text:=Myfile.txt-Notepad”)
 MyWin.Move 50,50
Contd….
 Once we have filled the Properties collection with a set of Property
objects (properties and values), you
Can specify the Properties object in place of a logical name in a test
statement.
For Ex:- (Instead of Entering)
Window(“Error”).WInbutton(“text:=OK”, “width:=50”).click
IF Entered…
Set MyDescription= Description.Create()
MyDescription(“text”).Value=“OK”
MyDescription(“width”).Value=50
Window(“Error”).WinButton(MyDescription).Click

You might also like