Written by Raj
HP Mercury QTP
Table and DB Checkpoints:
By adding table checkpoints to your tests or components, you can check that a
specified value is displayed in a cell in a table on your application. By adding
database checkpoints to your tests or components, you can check the contents of
databases accessed by your application. The results displayed for table and
database checkpoints are similar. When you run your test or component, QuickTest
compares the expected results of the checkpoint to the actual results of the run
session. If the results do not match, the checkpoint fails. You can check that a
specified value is displayed in a cell in a table by adding a table checkpoint
to your test or component. For ActiveX tables, you can also check the properties
of the table object. To add a table checkpoint, you use the Checkpoint
Properties dialog box. Table checkpoints are supported for Web and ActiveX
applications, as well as for a variety of external add-in environments. You can
use database checkpoints in your test or component to check databases accessed
by your Web site or application and to detect defects. You define a query on
your database, and then you create a database checkpoint that checks the results
of the query. Database checkpoints are supported for all environments supported
by QuickTest, by default, as well as for a variety of external add-in
environments.
There are two ways to define a database query:
(a) Use
Microsoft Query. You can install Microsoft Query from the custom installation of
Microsoft Office.
(b) Manually define an SQL statement.
The Checkpoint
timeout option is available only when creating a table checkpoint. It is not
available when creating a database checkpoint
{mosgoogle left}
Checking Bitmaps:
You can check an area of a Web page or application as a bitmap. While
creating a test or component, you specify the area you want to check by
selecting an object. You can check an entire object or any area within an
object. QuickTest captures the specified object as a bitmap, and inserts a
checkpoint in the test or component. You can also choose to save only the
selected area of the object with your test or component in order to save disk
space.
When you run the test or component, QuickTest compares the object or
selected area of the object currently displayed on the Web page or application
with the bitmap stored when the test or component was recorded. If there are
differences, QuickTest captures a bitmap of the actual object and displays it
with the expected bitmap in the details portion of the Test Results window. By
comparing the two bitmaps (expected and actual), you can identify the nature of
the discrepancy. For more information on test results of a checkpoint, see
Viewing Checkpoint Results.
For example, suppose you have a Web site that can
display a map of a city the user specifies. The map has control keys for
zooming. You can record the new map that is displayed after one click on the
control key that zooms in the map. Using the bitmap checkpoint, you can check
that the map zooms in correctly.
You can create bitmap checkpoints for all
supported testing environments (as long as the appropriate add-ins are loaded).
Note: The results of bitmap checkpoints may be affected by factors such as
operating system, screen resolution, and color settings.
{mosgoogle left}
Text/Text Area Checkpoint :
In the Text/Text Area Checkpoint Properties dialog box, you can specify the
text to be checked as well as which text is displayed before and after the
checked text. These configuration options are particularly helpful when the text
string you want to check appears several times or when it could change in a
predictable way during run sessions.
Note: In Windows-based environments, if
there is more than one line of text selected, the Checkpoint Summary pane
displays [complex value] instead of the selected text string. You can then click
Configure to view and manipulate the actual selected text for the
checkpoint.
QuickTest automatically displays the Checked Text in red and the
text before and after the Checked Text in blue. For text area checkpoints, only
the text string captured from the defined area is displayed (Text Before and
Text After are not displayed). To designate parts of the captured string as
Checked Text and other parts as Text Before and Text After, click the Configure
button. The Configure Text Selection dialog box opens
Checking XML
:
XML (Extensible Markup Language) is a meta-markup language for text
documents that is endorsed as a standard by the W3C. XML makes the complex data
structures portable between different computer environments/operating systems
and programming languages, facilitating the sharing of data.
XML files
contain text with simple tags that describe the data within an XML document.
These tags describe the data content, but not the presentation of the data.
Applications that display an XML document or file use either Cascading Style
Sheets (CSS) or XSL Formatting Objects (XSL-FO) to present the data.
You can
verify the data content of XML files by inserting XML checkpoints. A few common
uses of XML checkpoints are described below:
An XML file can be a static data
file that is accessed in order to retrieve commonly used data for which a quick
response time is neededfor example, country names, zip codes, or area codes.
Although this data can change over time, it is normally quite static. You can
use an XML file checkpoint to validate that the data has not changed from one
application release to another.
An XML file can consist of elements with
attributes and values (character data). There is a parent and child relationship
between the elements, and elements can have attributes associated with them. If
any part of this structure (including data) changes, your application's ability
to process the XML file may be affected. Using an XML checkpoint, you can check
the content of an element to make sure that its tags, attributes, and values
have not changed.
XML files are often an intermediary that retrieves
dynamically changing data from one system. The data is then accessed by another
system using Document Type Definitions (DTD), enabling the accessing system to
read and display the information in the file. You can use an XML checkpoint and
parameterize the captured data values in order to check an XML document or file
whose data changes in a predictable way.
XML documents and files often need a
well-defined structure in order to be portable across platforms and development
systems. One way to accomplish this is by developing an XML schema, which
describes the structure of the XML elements and data types. You can use schema
validation to check that each item of content in an XML file adheres to the
schema description of the element in which the content is to be placed.
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
What are the Features & Benefits of Quick Test Pro (QTP 8.0)?
Operates stand-alone, or integrated into Mercury Business Process Testing and
Mercury Quality Center. Introduces next-generation zero-configuration Keyword
Driven testing technology in Quick Test Professional 8.0 allowing for fast test
creation, easier maintenance, and more powerful data-driving capability.
Identifies objects with Unique Smart Object Recognition, even if they change
from build to build, enabling reliable unattended script execution. Collapses
test documentation and test creation to a single step with Auto-documentation
technology. Enables thorough validation of applications through a full
complement of checkpoints.
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
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.
What information do the columns in the Keyword View show for each step?
As you recorded your test, QuickTest generated steps in the Keyword View
representing each operation you performed in the Web browser.
The columns in
the Keyword View show different information for each step, as follows:
.
ItemDisplays the item for the step (test object, utility object, function call,
or statement) in a hierarchical icon-based tree.
. OperationThe operation to
be performed on the item, for example, Click or Select.
. ValueThe argument
values for the selected operation, for example, the mouse button to use when
clicking the image.
. AssignmentThe assignment of a value to or from a
variable so you can use the value later in the test.
. CommentAny textual
information you want to add regarding the step, for example, Return to page used
in first step of the test.
. DocumentationAuto-documentation of what the
step does, in an easy-to-understand sentence, for example, Click the
findFlights image.
Why use Regular Expressions?
you created a text checkpoint that searched for a specific text string. You
can use regular expressions to increase the flexibility and adaptability of your
tests.
Regular expressions enable QuickTest to identify objects and text
strings with varying values. You can use regular expressions when defining the
properties of an object, the methods of an argument, when parameterizing a step,
and when creating checkpoints with varying values
Explain QTP Testing process ?
The QuickTest testing process consists of 6 main phases:
1. Create
your test plan
Prior to automating there should be a detailed description of
the test including the exact steps to follow, data to be input, and all items to
be verified by the test. The verification information should include both data
validations and existence or state verifications of objects in the
application.
2. Recording a session on your application
As you
navigate through your application, QuickTest graphically displays each step you
perform in the form of a collapsible icon-based test tree. A step is any user
action that causes or makes a change in your site, such as clicking a link or
image, or entering data in a form.
2. Enhancing your test
o Inserting
checkpoints into your test lets you search for a specific value of a page,
object or text string, which helps you identify whether or not your application
is functioning correctly.
NOTE: Checkpoints can be added to a test as you
record it or after the fact via the Active Screen. It is much easier and faster
to add the checkpoints during the recording process.
o Broadening the scope
of your test by replacing fixed values with parameters lets you check how your
application performs the same operations with multiple sets of data.
o Adding
logic and conditional statements to your test enables you to add sophisticated
checks to your test.
3. Debugging your test
If changes were made to
the script, you need to debug it to check that it operates smoothly and without
interruption.
4. Running your test on a new version of your
application
You run a test to check the behavior of your application. While
running, QuickTest connects to your application and performs each step in your
test.
5. Analyzing the test results
You examine the test results to
pinpoint defects in your application.
6. Reporting defects
As you
encounter failures in the application when analyzing test results, you will
create defect reports in Defect Reporting Tool.
What is Parameterizing Tests?
When you test your application, you may want to check how it performs the
same operations with multiple sets of data. For example, suppose you want to
check how your application responds to ten separate sets of data. You could
record ten separate tests, each with its own set of data. Alternatively, you can
create a parameterized test that runs ten times: each time the test runs, it
uses a different set of data.
What is test object model in QTP ?
The test object model is a large set of object types or classes that
QuickTest uses to represent the objects in your application. Each test object
class has a list of properties that can uniquely identify objects of that class
and a set of relevant methods that QuickTest can record for it.
A test
object is an object that QuickTest creates in the test or component to represent
the actual object in your application. QuickTest stores information about the
object that will help it identify and check the object during the run
session.
A run-time object is the actual object in your Web site or
application on which methods are performed during the run session.
When you
perform an operation on your application while recording, QuickTest:
?
identifies the QuickTest test object class that represents the object on which
you performed the operation and creates the appropriate test object
? reads
the current value of the objects properties in your application and stores the
list of properties and values with the test object
? chooses a unique name
for the object, generally using the value of one of its prominent
properties
? records the operation that you performed on the object using the
appropriate QuickTest test object method
For example, suppose you click on a
Find button with the following HTML source code:
<INPUT TYPE="submit"
NAME="Find" VALUE="Find">
QuickTest identifies the object that you
clicked as a WebButton test object. It creates a WebButton object with the name
Find, and records the following properties and values for the Find
WebButton:
It also records that you performed a Click method on the
WebButton.
QuickTest displays your step in the Keyword View like
this:
QuickTest displays your step in the Expert View like
this:
Browser("Mercury Interactive").Page("Mercury
Interactive").
WebButton("Find")
How to analyzing Test Results using QTP?
When QuickTest finishes running the test, the Test Results window
opens.
Initially, the Test Results window contains two panes for displaying
the key elements of your test run.
. The left pane displays the results tree,
an icon-based view of the steps that were performed while the test was running.
The results tree is organized according to the Web pages visited during the test
run and can be expanded (+) to view each step. The steps performed during the
test run are represented by icons in the tree. You can instruct QuickTest to run
a test or action more than once using different sets of data in each run. Each
test run is called an iteration, and each iteration is numbered. (The test you
ran had only one iteration.)
. The right pane displays the test results
details. The iteration summary table indicates which iterations passed and which
failed. The status summary table indicates the number of checkpoints or reports
that passed, failed, and raised warnings during the test.
1 View the test
results for a specific step.
In the results tree, expand (+) Test Recording
Summary > Recording Iteration 1 (Row 1) > Action1 Summary > your
application > your test name .
The Test Results window now contains three
panes, displaying:
. the results tree, with one step highlighted
. the
test results details of the highlighted step
. the Active Screen, showing a
screen capture of the Web page on which the step was performed.
When you
click a page in the results tree, QuickTest displays the corresponding page in
the application view. When you click a step (an operation performed on an
object) in the results tree, the corresponding object is highlighted in the
application view. In this case, the Departing From text box is highlighted.
Explain the check points in QTP?
A checkpoint verifies that expected information is displayed in a Application
while the test is running. You can add eight types of checkpoints to your test
for standard web objects using QTP.
A page checkpoint checks the
characteristics of a Application
A text checkpoint checks that a text
string is displayed in the appropriate place on a Application.
An object
checkpoint (Standard) checks the values of an object on a Application.
An
image checkpoint checks the values of an image on a Application.
A table
checkpoint checks information within a table on a Application
An
Accessiblity checkpoint checks the web page for Section 508 compliance.
An
XML checkpoint checks the contents of individual XML data files or XML documents
that are part of your Web application.
A database checkpoint checks the
contents of databases accessed by your web site
In how many ways we can add check points to an application using QTP.
We can add checkpoints while recording the application or we can add after
recording is completed using Active screen (Note : To perform the second one The
Active screen must be enabled while recording).
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.
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.
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.
Object Repositories types, Which & when to use?
Deciding Which Object Repository Mode to Choose
To choose the default
object repository mode and the appropriate object repository mode for each test,
you need to understand the differences between the two modes.
In general, the
object repository per-action mode is easiest to use when you are creating simple
record and run tests, especially under the following conditions:
You have
only one, or very few, tests that correspond to a given application, interface,
or set of objects.
You do not expect to frequently modify test object
properties.
You generally create single-action tests.
Conversely, the
shared object repository mode is generally the preferred mode when:
You
have several tests that test elements of the same application, interface, or set
of objects.
You expect the object properties in your application to change
from time to time and/or you regularly need to update or modify test object
properties.
You often work with multi-action tests and regularly use the
Insert Copy of Action and Insert Call to Action options.
Can we Script any test case with out having Object repository? or Using
Object Repository is a must?
No. U can script with out Object repository by knowing the Window Handlers,
spying and recognizing the objects logical names and properties available.
How to execute a WinRunner Script in QTP?
(a) TSLTest.RunTest TestPath, TestSet [, Parameters ] --> Used in QTP 6.0
used for backward compatibility Parameters : The test set within Quality Center,
in which test runs are stored. Note that this argument is relevant only when
working with a test in a Quality Center project. When the test is not saved in
Quality Center, this parameter is ignored.
e.g : TSLTest.RunTest "D:\test1",
""
(b)TSLTest.RunTestEx TestPath, RunMinimized, CloseApp [, Parameters ]
TSLTest.RunTestEx "C:\WinRunner\Tests\basic_flight", TRUE, FALSE, "MyValue"
CloseApp : Indicates whether to close the WinRunner application when the
WinRunner test run ends. Parameters : Up to 15 WinRunner function argument
Why divide a test into three action calls?
When you create a new test, it contains a call to one action. By dividing
your tests into calls to multiple actions, you can design more modular and
efficient tests.
How To clear the AutoComplete?
1 In your Internet Explorers menu bar, choose Tools > Internet Options
> Content tab.
2 Click AutoComplete in the Personal information area. The
AutoComplete Settings dialog box opens.
3 In the Use AutoComplete for area,
clear the User names and passwords on forms option.
4 Click OK to save your
changes and close the AutoComplete Settings dialog box, then click OK again to
close the Internet Options dialog box.
What is Object Spy in QTP?
Using the Object Spy, you can view the properties of any object in an open
application. You use the Object Spy pointer to point to an object. The Object
Spy displays the selected objects hierarchy tree and its properties and values
in the Properties tab of the Object Spy dialog box.