Automation Fundamental
Concepts and Intro.
                     about QTP 9.2
                                  --Chandra Sekhar
Contact:chanduatp@gmail.com
+91-9986108024
Automation Fundamental Concepts
       What is Test Automation ?
        Software Test Automation is the process of automating the steps of manual test
         cases using an automation tool Or utility to shorten the testing life cycle with
         respect to time…
        When application undergoes regression, some of the steps might be missed out
         or skipped which can be avoided in Automation…
        Automation helps to avoid human errors and also expedite the testing
         process…
        To implement the Test Automation detailed planning and effort is required
Contact:chanduatp@gmail.com
+91-9986108024
Automation Fundamental Concepts
         Automation saves time and effort which results in reduction of the Test life
         cycle…
         Benefits of Automation
         - Consistency of Test Execution
         - Reducing cycle time of regression test cycles
         - Data driven testing
         - Repeatability
         - Coverage
         - Reliability
         - Reusability of test wares
Contact:chanduatp@gmail.com
+91-9986108024
Automation Fundamental Concepts
      Automation life cycle is a subset of the entire test life cycle…
     Automation planning can be initiated in parallel to the test planning phase…
     Factors to be considered in automation planning,
         Stability of AUT (Application under test)
         No of regression cycles to be performed
         Compatibility of App platform with testing tools
         Cost benefit analysis (ROI)
         Availability of skilled resources
Contact:chanduatp@gmail.com
+91-9986108024
Regression Testing & Automation
       When Automation is applicable?
          Regression Testing Cycles are long and iterative.
          If the application is planned to have multiple releases / builds
          If it’s a long running application where in small enhancements / Bug Fixes
           keeps happening
          Test Repeatability is required
Contact:chanduatp@gmail.com
+91-9986108024
Technologies Supported
Default Support
     1. Standard Windows applications
     2. Web objects / Applications
     3. ActiveX controls
     4. Visual Basic applications
Supported Add-ins
    QuickTest Professional Java Add-in 9.1
    QuickTest Professional .NET Add-in 9.2
    QuickTest Professional Oracle Add-in 8.2
    QuickTest Professional PeopleSoft Add-in 8.2*
    QuickTest Professional Add-in 8.2 for SAP Solutions
    QuickTest Professional Siebel Add-in 8.0*
    QuickTest Professional Stingray Add-in 8.2
    QuickTest Professional Terminal Emulator Add-in 8.0*
    QuickTest Professional VisualAge Smalltalk Add-in 8.2
    QuickTest Professional Web Services Add-in 9.2
Contact:chanduatp@gmail.com
+91-9986108024
Supported Browsers
Microsoft Internet Explorer 6.0 Service Pack 1
Microsoft Internet Explorer 7.0
Netscape Browser 8.1.2
Mozilla Firefox 1.5
Mozilla Firefox 2.0
Contact:chanduatp@gmail.com
+91-9986108024
Add-in Manager
                                 Default Add-ins
                                     ActiveX
                                     Visual basic
                                     Web
                                 Other Add-Ins
                                     Siebel
                                     Java
                                     SAP
                                     Oracle
                                     .Net and many more
Contact:chanduatp@gmail.com
+91-9986108024
Add-in Manager Cont…
    QTP’s Add-in Manager facilitates the users to select the technology /
     environment from variety of environments suitable for the AUT (Application
     Under Test)
    Once an add-in is loaded, users can record that application in its supported
     environment and thus QTP recognizes the objects specific to the application
     under test (AUT) as loaded through Add-in Manager.
    It is critical for the users to know the development technologies / environment of
     AUT, and load right Add-Ins while invoking Quick Test Pro.
Contact:chanduatp@gmail.com
+91-9986108024
Quick Test Professional - Record &
Run Modes
       Recording Modes
         Normal
         Analog
         Low level
    Run Modes
       Normal
       Fast
       Update
Contact:chanduatp@gmail.com
+91-9986108024
Quick Test Professional -Tools 
Options  General
        Click on “Restore Layout” button to reset screens to the initial setting when
         QuickTest was first installed.
Contact:chanduatp@gmail.com
+91-9986108024
Quick Test Professional - Tools 
Options  Run
Contact:chanduatp@gmail.com
+91-9986108024
Quick Test Professional - Options 
Run
          Best Practices for Options for Run Mode:
             Run Mode as Normal:
                 This ensures that the execution arrow appears to help with trouble
                  shooting the tests.
                 Synchronization becomes better for the AUT (Application Under Test)
             Test Results:
                 Deselect the option “View Results when run session ends”
             Mercury Tool Integration:
                 Select "Allow other Mercury products to run tests and components“
             Screen Capture:
                 Save step screen capture to results "On error and warnings"
 Contact:chanduatp@gmail.com
 +91-9986108024
Automation  Record and Run Settings
 Contact:chanduatp@gmail.com
 +91-9986108024
Record and Run Settings
          Best Practices for Record & Run Settings
         Set the options to configure QTP to "Record and run test on any open
          Windows- based application“
         Set the option - This window will appear the first time you click on the
          Record button in the new test.
         Manually recall this window by selecting AutomationRecord and Run
          settings
Contact:chanduatp@gmail.com
+91-9986108024
QTP - Main Window
Contact:chanduatp@gmail.com
+91-9986108024
QTP - Main Window
         Test Pane:
           Test Pane contains two labs to view the tests,
            - Keyword View
            - Expert View
            Keyword View:
               Quick Test Pro displays your test in the form of a collapsible, icon
                based tree…
            Expert View:
               Quick Test Pro displays the source code (VB Script) of the tests in this
                view.
Contact:chanduatp@gmail.com
+91-9986108024
Resources  Object Repository
                                                Can add a
                                              New Object to
                                              the repository
                      The value of property
                       can be edited here.
                                                                  More properties for
                                                                recognizing the object
                                                               can be added to the list.
Contact:chanduatp@gmail.com
+91-9986108024
Resources  Object Repository Manager
Contact:chanduatp@gmail.com
+91-9986108024
Resources  Associate Repositories
                                     Add shared Repository
Contact:chanduatp@gmail.com
+91-9986108024
Resources  Object Repository
                              Associate repository is
                                added to the Filter
                                     option.
Contact:chanduatp@gmail.com
+91-9986108024
Object Repository  Merging tool
                                        Primary Repository.
                              Secondary Repository
Contact:chanduatp@gmail.com
+91-9986108024
Object Repository  Comparison Tool
                 Comparing two
                  repositories'
Contact:chanduatp@gmail.com
+91-9986108024
VB Script basics – Data Types
Contact:chanduatp@gmail.com
+91-9986108024
VB Script basics – Variables & Constants
   Declaring Variables
   Naming Restrictions
   Scope and Lifetime of Variables
   Assigning Values to Variables
   Scalar Variables and Array Variables
   Creating Constants
Contact:chanduatp@gmail.com
+91-9986108024
VB Script basics - Operators
Contact:chanduatp@gmail.com
+91-9986108024
VB Script basics – Conditions & Looping
     Conditional Statements
       If...Then...Else statement
       Select Case statement
    Looping
       Do...Loop: Loops while or until a condition is true.
        While...Wend: Loops while a condition is true.
         For...Next: Uses a counter to run statements a specified number of times.
        For each...Next: Repeats a group of statements for each item in a collection
         or each element of an array.
Contact:chanduatp@gmail.com
+91-9986108024
VB Script basics – Functions
Contact:chanduatp@gmail.com
+91-9986108024
Key areas in QTP
      About the script structure
      Actions (Simple, Nested, External, Re-usable)
      Parameterization (Different Types)
      Checkpoints (Programmatic Methodology)
      Descriptive programming
      Adv. Synchronization points
      Exception Handling
    Contact:chanduatp@gmail.com
    +91-9986108024
About the script structure
Contact:chanduatp@gmail.com
+91-9986108024
Actions (Simple, Nested, External, Re-usable)
     Standalone Actions
     Nested Actions
     Integration of Actions (Call from One Action to other)
     Driver Action (Main Action)
     Re-usable Actions
     External Call for Actions
Contact:chanduatp@gmail.com
+91-9986108024
Parameterization
   Classifications of Parameterization
        Test and Action Parameters
        Data Table (Global & Action Specific)
        Environment variables
        Random Number
Contact:chanduatp@gmail.com
+91-9986108024
    Types of Checkpoints
Standard Checkpoint    Checks values of an object’s properties     Check that a radio button is
                                                                   selected.
Image Checkpoint       Checks the property values of               Check that the image source file
                       an image                                    is correct.
Table Checkpoint       Checks information in a table               Check that the value in a table
                                                                   cell is correct.
Page checkpoint        Checks the characteristics of a Web page    Check how long a Web page
                                                                   takes to load or if a Web page
                                                                   contains broken links.
Text /                 Checks that a text string is displayed in   Check whether the expected
Text Area Checkpoint   the appropriate place in a Web page or      text string is displayed in the
                       application window                          expected location on a Web
                                                                   page or dialog box
Bitmap Checkpoint      Checks an area of a Web page                Check that a Web page (or any
                       or application after capturing              portion of it) is displayed as
                       it as a bitmap                              expected.
Contact:chanduatp@gmail.com
+91-9986108024
   Types of Checkpoints
Database             Checks the contents of databases    Check that the value in a
Checkpoint           accessed by an application or Web   database query is correct.
                     site
Accessibility        Identifies areas of a Web site      Check if the images on a
Checkpoint           to check for Section 508            Web page include ALT
                     compliancy                          properties, required by the
                                                         W3C Web Content
                                                         Accessibility Guidelines.
XML Checkpoint       Checks the data content of          Note: XML file checkpoints
                     XML documents                       are used to check a
                                                         specified XML file; XML
                                                         application checkpoints are
                                                         used to check an XML
                                                         document within a Web
                                                         page.
Contact:chanduatp@gmail.com
+91-9986108024
Descriptive Programming Samples
   Descriptive programming
        Entering Programmatic Descriptions Directly into Statements
         Browser("Mercury Tours").Page("Title:=Mercury
         Tours").WebEdit("Name:=Author", "Index:=3").Set "Mark Twain"
        Using Description Objects for Programmatic Descriptions
         Set MyDescription = Description.Create()
         MyDescription("text").Value = "OK"
         MyDescription("width").Value = 50
         Window("Error").WinButton(MyDescription).Click
Contact:chanduatp@gmail.com
+91-9986108024
Adv. Synchronization Points
        Using tool menu options
        Wait property
        Programmatically
        Wait & exist
Contact:chanduatp@gmail.com
+91-9986108024
Exception Handling
   Recovery Scenario Concepts
   Recovery Process
      Trigger Events
      Recovery Operation
      Post-recovery Operation
Contact:chanduatp@gmail.com
+91-9986108024
Sample Script – QTP Functions
    'sample 1 - Getting all the items from the combobox
    My_Cnt = Window("Flight Reservation").WinComboBox("Fly
     From:").GetItemsCount
    msgbox My_Cnt
    For i = 1 to My_Cnt
          ' the combobox item index will start from zero.
          My_item = Window("Flight Reservation").WinComboBox("Fly
     From:").GetItem(i-1)
          Msgbox My_item
    Next
    'sample 2 - Getting the entire content of the combobox
        Var_Content = Window("Flight Reservation").WinComboBox("Fly
     From:").GetContent
        Msgbox Var_Content
Contact:chanduatp@gmail.com
+91-9986108024
Sample Script – QTP Functions
    'sample 3 - Selecting an item from the combo - Using Index
    Window("Flight Reservation").WinComboBox("Fly From:").Select(5)
    'sample 4 - Selecting an item from the combo - Using Value
    Window("Flight Reservation").WinComboBox("Fly From:").Select("London")
    'sample 5 - Selecting an item from the combo - Using Variable
    Var_Item = "Zurich"
    Window("Flight Reservation").WinComboBox("Fly From:").Select(Var_Item)
    'sample 6 - Getting the value of selected item
    Var_Sel = Window("Flight Reservation").WinComboBox("Fly From:").GetSelection
    Msgbox Var_Sel
Contact:chanduatp@gmail.com
+91-9986108024
Sample Script – QTP Functions
     ' Some FUM's (Frequently Used Methods)
     'GetROProperty
     Var_Text = Window("Flight
      Reservation").WinEdit("Name:").GetROProperty("AttachedText")
     Msgbox Var_Text
     Var_Enab = Window("Flight
      Reservation").WinEdit("Name:").GetROProperty("Enabled")
     Msgbox Var_Enab
     'Exist
     If Window("Flight Reservation").WinEdit("Name:").Exist(5) Then
          Msgbox "The Editbox exists"
     Else
          Msgbox "The Editbox does not exist"
     End if
Contact:chanduatp@gmail.com
+91-9986108024
                              Thank You
Contact:chanduatp@gmail.com
+91-9986108024