TESTINGMANTRA - BLOG
Blog
Testing Types
Usability Testing
Smoke Testing
Load Testing
Stress Testing
Domain Testing
Exploratory Testing
Recovery Testing
Scenario Testing
Regression Testing
User Acceptance Testing
Alpha Testing
Beta Testing
Unit Testing
Static & Dynamic Analysis Testing
Functional Testing
Ad-hoc Testing
Volume Testing
System Testing
Sanity Testing
Black Box Testing
Interoperability Testing
Volume Testing Techniques
Gray Box Testing
White Box testing
Articals
Agile Development
Coverage Criteria for GUI Testing
Release Life Cycle
Quality Concept
TQM - Total Quality Management
When are the Test Plan written
Unit Testing Advantages & Techniques
Classification of Defect
Requirement Testing Techniques
When is Testing Complete?
Quantative Project Management
Software Configuration Management
When to use Regression Testing?
V-Model Concept of Testing
Activity of Software Test Engineer
Risk Management
Sanity Testing A Overview
Website Security Smoke Test Template
Software Testing Techniques
Requirements & Specifications
Traceability Matrix
Test Plan - Objectives and Benefits
Agile Testing - Master the new game
Testing Vocabulary
SQL Tutorial
Test Strategy
Error Handling Testing
SDLC - Concept
Steps of Software Testing Life Cycle
Why to use Metrics?
Defect Tracking
SyncML
Mobile Testing
GSM Basic
Cellular Network Architecture
Mobile Communication Overview
Mobile & handheld usability testing
Why Mobile Testing is different
True BREW Testing
VOIP Testing
SIP Testing - An overview
SIP Messages
Structure of SIP Protocol
SIP Important terms
SDLC Model
Software Development Life Cycle
Waterfall model
Spiral Model
V-Model
Iterative Model
Big Bang Model
RAD Model
Prototype Model
SOFTWARE TESTING
Test Plan
Test Case & Test Design techniques
Templates
Software Project Template
Software Testing Template
Automated Testing Tools
QTP
Winrunner
JUnit
Selenium IDE
LoadRunner
JMeter
Estimation Techniques
Using Use Case Points
Quick Estimation Technique
Testing Estimation Process
Certifications
CSQA
CSTE
                                                                                                                                                                  Usability Testing      Smoke Testing      Load Testing      Stress Testing      Domain Testing      Exploratort Testing       Recovery Testing      Scenario Testing      Regression Testing      User Acceptance Testing      Alpha Testing      Beta Testing      Unit Testing      Static & Dynamic Analysis Testing                                                                                             







Share
Follow us at Twitter
Follow us at Facebook
Share
Quick Test Professional (QTP) is an automated functional Graphical User Interface (GUI) testing tool that allows the automation of user actions on a web or  client based and desktop computer application. It is primarily used for functional regression test automation. QTP uses a scripting language built on top of VBScript to specify the test procedure, and to  manipulate the objects and controls of the application under test.

Testing Process
QTP (QuickTest Professional) lets you create tests and business components by recording operations as you perform them in your application.

Test - A compilation of steps organized into one or more actions, which we can use to verify that our application performs as expected. A test is composed of  actions (3 kinds of actions are there in QTP Non-reusable action, Reusable action and External action).

1) First step is Planning Before starting to build a test, you should plan it and prepare the required infrastructure. For example, determine the  functionality you want to test, short tests that check specific functions of the application or complete site.Decide how you want to organize your object  repositories.

2)Second step in QTP is Creating Tests or Components
We can create a test or component by
a) Either recording a session on your application or Web site.
As we navigate through the application or site, QuickTest graphically displays each step we perform as a row in the Keyword View. The Documentation column of  the Keyword View also displays a description of each step in easy-to-understand sentences. A step is something that causes or makes a change in your site or  application, such as clicking a link or image, or submitting a data form.

OR

b) Build an object repository and use these objects to add steps manually in the Keyword View or Expert View. We can then modify your test or component  with special testing options and/or with programming statements.
3)Third step is Inserting checkpoints into your test or component. A checkpoint is a verification point that compares a recent value for a specified property  with the expected value for that property. This enables you to identify whether the Web site or application is functioning correctly.

4)Fourth step is Broaden the scope of your test or component by replacing fixed values with parameters. To check how your application performs the same operations with different data you can parameterize your test or component. When you parameterize your test or component, QuickTest substitutes the fixed values in your test or component with parameters. Each run session that uses a different set of parameterized data is called an iteration. 
We can also use output values to extract data from our test or component. An output value is a value retrieved during the run session and entered into the  Data Table or saved as a variable or a parameter. We can subsequently use this output value as input data in your test or component.

We can use many functional testing features of QuickTest to improve your test or component and/or add programming statements to achieve more complex testing  goals.

5)Fifth step is running the test After creating test or component, we run it. Run test or component to check the site or application.
When we run the test or component, QuickTest connects to your Web site or application and performs each operation in a test or component, checking any text  strings, objects, or tables you specified. If we parameterized the test with Data Table parameters, QuickTest repeats the test (or specific actions in your  test) for each set of data values we defined. Run the test or component to debug it. We can control the run session to identify and eliminate defects in the test or component. We can use the  Step Into,
Step Over, And Step Outcommands to run a test or component step by step. We can also set breakpoints to pause the test or component at pre-determined points. We can  view the value of variables in the test or component each time it stops at a breakpoint in the Debug Viewer.

6)Sixth step is analyzing the results After we run test or component, we can view the results. ? View the results in the Results window. After running the test or component, we can view the results of the run in the Test Results window. We can view a summary of the results as well as a  detailed report. Report defects identified during a run session. If Quality Center is installed, we can report the defects fond out to a database. We can instruct QuickTest to automatically report each failed step in the  test or component, or we can report them manually from the Test Results window.
Explain Test object Model, test object and run-time object ?
Test object Model is a set of object types or Classes that QuickTest uses to represents the objects in our application. A test object class comprises of a list of properties that can individually (uniquely) identify objects of that class and a set of appropriate methods that QuickTest can record for it.

A test object is an object that QuickTest creates in the test to correspond to (represent) the actual object in the application. QuickTest uses the stored information about the object during the run session to identify and check the object.

A run-time object is the real (actual) object in the application or Web site on which methods are performed during the run session.
Properties and methods of objects:
The property set for each test object is created and maintained by QuickTest. The property set for each run-time object is created and maintained by the object architect (creator) (Microsoft for Internet Explorer objects, Netscape for Netscape objects).

Similarly, methods of test objects are methods that QuickTest recognizes and records when they are executed (performed) on an object while we are recording, and that QuickTest executes when the test or component runs. Methods of Run-time object are the methods of the object in the application as defined by the object architect (creator). We can access and execute run-time object methods using the Object property.

Some important points to remember about methods and properties :
    * Each test object method we execute (perform) while recording is recorded as a separate step in the test. When we run the test, QuickTest executes (performs) the recorded test object method on the run-time object.
    * Properties of test object are captured from object while recording. QuickTest uses the values of these properties to identify runtime objects in the application during a run session.
    * Property values of objects in the application may change .To make the test object property values match the property values of the run-time object, we can modify test object properties manually while designing the test or component or using SetTOProperty statements during a run session. We can also use regular expressions to identify property values.
    * We can view or modify the test object property values that are stored with the test or component in the Object Properties or Object Repository dialog box.
    * We can view the syntax of the test object methods as well as the run-time methods of any object on our desktop using the Methods tab of the Object Spy.
    * We can retrieve or modify property values of the TEST OBJECT during the run session by adding GetTOProperty and SetTOProperty statements in the Keyword View or Expert View. We can retrieve property values of the RUNTIME OBJECT during the run session by adding GetROProperty statements.

If the available test object methods or properties for an object are not sufficient or they do not provide the functionality we need, we can access the internal methods and properties of any run-time object using the Object property. We can also use the attribute object property to identify Web objects in the application according to user-defined properties.
QTP - Tutorial