Automation Fundamental Concepts     &   QTP  8.2
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
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
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
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
QTP At a Glance ….. Introduction to QTP (QuickTest Professional) “The Mercury advanced keyword-driven testing solution” Technologies Supported   Default Support   1. Standard Windows applications   2. Web objects / Applications   3. ActiveX controls   4. Visual Basic applications     Additional QuickTest add-ins Support,   1. Java    2. Oracle    3. SAP Solutions,   4. .NET Windows   5. Web Forms,    6. Siebel,    7. PeopleSoft,   8.  Web services,   and terminal emulator applications .
Testing Process with QTP Quick Test Pro involves 3 main stages   Creating Test scripts   Running Tests   Analyzing Test Results
Testing Process with QTP Creating Tests Create a test script by recording a manual test scenario on the AUT (Application Under Test) using QTP.  Quick Test Pro graphically displays each step users perform in the form of a collapsible, icon based tree view in QTP’s Keyword View.
  Testing Process with QTP Running Tests & Analyzing Test Results Running Tests : Once the test scripts are recorded / created, next step is to execute them…While running (executing) the tests Quick Test Pro connects to the web site or AUT and performs each operation in the test as performed manually while recording / creating tests (test scripts)… Debugging Test  :  To identify and eliminate the defects in the test scripts.   Analyzing Test Results :  Once the test scripts are executed, test results and the summary can be viewed for result analysis.
Add-in Manager Default Add-ins ActiveX Visual basic Web Other Add-Ins Siebel Java SAP Oracle  .Net and many more
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.
Quick Test Professional  -  Record & Run Modes Recording Modes Normal Analog Low level Run Modes Normal Fast Update
Quick Test Professional  -  Options    General Best Practices for General Options: Deselect all check boxes except “Save data for integrating with performance testing …” and “Display Add-in Manager on startup” which is default setting. Click on “Restore Layout” button to reset screens to the initial setting when QuickTest was first installed.
Quick Test Professional  -  Options    Run
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"
Record and Run Settings
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 Test   Record and Run settings
QTP - Main Window
QTP - Main Window
  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.
  QTP - Main Window
  QTP - Main Window Data Table : Data table assists in Parameterizing the tests… Debug Viewer Pane : It assists in debugging tests with the help of  Watch Expressions, Variables, and Command.
Quick Test Pro Commands Quick Test Pro Commands : The Quick Test Pro commands can be chosen from the menu bar or from a Tool bar. File Tool bar : File tool bar contains buttons for managing the test.
Quick Test Pro Commands Test Tool bar : Test tool bar contains buttons for the commands used when creating or maintaining the tests…
Quick Test Pro Commands Debug Tool Bar  : It contains buttons for commands used when debugging the steps in the tests…
Quick Test Pro Commands Action Tool Bar :   To view all actions in the test flow or to view the details of a selected action…
Working with Test Objects in QTP Test Object Model Conceptualization Applying the Test Object Model Concept Viewing Object properties Using Object Spy Demo on Test Object Model features of QTP
 Test Object Model Cont… How Quick test Pro learns objects in application ?  Quick Test first looks at the object on which user is recording and stores it as a test object & then determines which test object class it fits into by, Mandatory properties Assistive properties.. Ordinal identifier……  Smart Identification..
Test Object Model Cont… Mandatory properties: For each Test Object class, Quick Test has list of mandatory properties… Assistive properties: Quick Test adds assistive properties one by one to the description until it has compiled a unique description… Ordinal identifier: If the combination of all defined mandatory and assistive properties is not sufficient to create a unique test object description, Quickest also records the value for the selected ordinal identifier.  Smart Identification: A Smart Identification definition can help QuickTest identify an object, if it is present, even when the recorded description fails due to changes in one or more property values.
Test Object Model How Quick Test Identifies objects during the test run? Quick test searches for a run time object that exactly matches the description of the test object from the object repository it learned while recording…
Test Object Model Test Object :   Test Object is an object that Quick Test creates in the test to represent the actual object in the application… Run Time Object : It is the actual object in the web site or application on which methods are performed during the test run..
Test Object Model Viewing object properties by Object Spy : Using the object spy, users can view the properties of any object in an open application…
Object Spy
Test Object Model Viewing object methods  and methods syntax using object spy… Object Spy enables users to view both the run time object methods, the test object methods  associated with an object and to view the syntax for a selected method…
Managing Test objects Object Repository Dialog box : - Per Action Mode   - Shared Action Mode
Managing Test objects Identifying the Object :   - Logical Name   - Class Viewing the Objects Property : Type  -  Constant, Data table property ,variable parameter. Property -  Name of the Property Value  -  The value of the property -  Smart Identifier -  Add/ Remove
Managing Test Objects Adding or Viewing New objects : - Add New Objects    - Object spy - Saves all the object properties and values  from a per action object repository to a  separate file for use as a shared object  repository in another test… - Modify the Test object properties - Finding the Test object properties - Modifying the Logical Names
Managing Test Objects Object Properties Modification  Users can modify the properties of the temporary version of the object during the test run with out affecting the permanent values in the object repository   - SetTOProperty - GetTOProperty
Main phases of QTP testing Process Preparing to record  Recording a session on the application  Executing the test Enhancing your test  Debugging your test  Re-executing the tests on a new version of the application  Analyzing the test results  Reporting defects
DEMO Please record a test and run the script. Analyze the test result.
Types of Checkpoints (Verification Process) Check that a Web page (or any portion of it) is displayed as expected.  Checks an area of a Web page  or application after capturing  it as a bitmap  Bitmap Checkpoint  Check whether the expected text string is displayed in the expected location on a Web page or dialog box  Checks that a text string is displayed in the appropriate place in a Web page or application window  Text /  Text Area Checkpoint  Check how long a Web page takes to load or if a Web page contains broken links.  Checks the characteristics of a Web page  Page checkpoint  Check that the value in a table cell is correct.  Checks information in a table  Table Checkpoint  Check that the image source file is correct.  Checks the property values of  an image  Image Checkpoint  Check that a radio button is selected.  Checks values of an object’s properties  Standard Checkpoint
Types of Checkpoints Cont… Note: XML file checkpoints are used to check a specified XML file; XML application checkpoints are used to check an XML document within a Web page.  Checks the data content of  XML documents  XML Checkpoint  Check if the images on a Web page include ALT properties, required by the W3C Web Content Accessibility Guidelines.  Identifies areas of a Web site  to check for Section 508 compliancy  Accessibility Checkpoint  Check that the value in a database query is correct.  Checks the contents of databases accessed by an application or Web site  Database Checkpoint
Demo on using checkpoints Apply different types of checkpoints to the recorded test. Analyze the test results
Parameterising Tests Different Types of Parameters  Test & Action Parameters Data Table Environment Variable Defining a Data Table Parameter Adding Parameter Values to a Data Table Modifying Steps Affected by Parameterization Running and Analyzing a Parameterized Test
Creating Output Values Creating an Output Value  Running and Analyzing a Test with Output Values
Using Regular Expressions Regular Expression Syntax  Working with Regular Expressions  Running and Analyzing a Test with Regular Expressions
Dividing Tests into Multiple Actions Working with Multiple Actions  Creating New Actions  Inserting Existing Actions  Parameterizing an Action  Running and Analyzing a Multi-action Test  Different Types of Actions
Recovery Scenarios Defining Recovery Scenarios  Creating a Recovery File  Understanding the Recovery Scenario Manager Dialog Box  Understanding the Recovery Scenario Wizard  Welcome to the Recovery Scenario Wizard Screen
Recovery Scenario Welcome to the Recovery Scenario Wizard Screen  Select Trigger Event Screen  Specify Pop-up Window Conditions Screen  Select Object Screen  Set Object Properties and Values Screen  Select Test Run Error Screen
Recovery Scenario Select Processes Screen  Recovery Operations Screen  Recovery Operation Screen  Recovery Operation – Click Button or Press Key Screen  Recovery Operation – Close Processes Screen  Recovery Operation – Function Call Screen
Recovery Scenario Post-Recovery Test Run Options Screen  Name and Description Screen  Completing the Recovery Scenario Wizard Screen  Saving the Recovery Scenario in a Recovery File  Managing Recovery Scenarios
Thank You

Qtp Basics

  • 1.
  • 2.
    Automation Fundamental ConceptsWhat 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
  • 3.
    Automation Fundamental ConceptsAutomation 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
  • 4.
    Automation Fundamental ConceptsAutomation 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
  • 5.
    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
  • 6.
    QTP At aGlance ….. Introduction to QTP (QuickTest Professional) “The Mercury advanced keyword-driven testing solution” Technologies Supported Default Support 1. Standard Windows applications 2. Web objects / Applications 3. ActiveX controls 4. Visual Basic applications Additional QuickTest add-ins Support, 1. Java 2. Oracle 3. SAP Solutions, 4. .NET Windows 5. Web Forms, 6. Siebel, 7. PeopleSoft, 8. Web services, and terminal emulator applications .
  • 7.
    Testing Process withQTP Quick Test Pro involves 3 main stages Creating Test scripts Running Tests Analyzing Test Results
  • 8.
    Testing Process withQTP Creating Tests Create a test script by recording a manual test scenario on the AUT (Application Under Test) using QTP. Quick Test Pro graphically displays each step users perform in the form of a collapsible, icon based tree view in QTP’s Keyword View.
  • 9.
    TestingProcess with QTP Running Tests & Analyzing Test Results Running Tests : Once the test scripts are recorded / created, next step is to execute them…While running (executing) the tests Quick Test Pro connects to the web site or AUT and performs each operation in the test as performed manually while recording / creating tests (test scripts)… Debugging Test : To identify and eliminate the defects in the test scripts. Analyzing Test Results : Once the test scripts are executed, test results and the summary can be viewed for result analysis.
  • 10.
    Add-in Manager DefaultAdd-ins ActiveX Visual basic Web Other Add-Ins Siebel Java SAP Oracle .Net and many more
  • 11.
    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.
  • 12.
    Quick Test Professional - Record & Run Modes Recording Modes Normal Analog Low level Run Modes Normal Fast Update
  • 13.
    Quick Test Professional - Options  General Best Practices for General Options: Deselect all check boxes except “Save data for integrating with performance testing …” and “Display Add-in Manager on startup” which is default setting. Click on “Restore Layout” button to reset screens to the initial setting when QuickTest was first installed.
  • 14.
    Quick Test Professional - Options  Run
  • 15.
    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"
  • 16.
  • 17.
    Record and RunSettings 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 Test  Record and Run settings
  • 18.
    QTP - MainWindow
  • 19.
    QTP - MainWindow
  • 20.
    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.
  • 21.
    QTP- Main Window
  • 22.
    QTP- Main Window Data Table : Data table assists in Parameterizing the tests… Debug Viewer Pane : It assists in debugging tests with the help of Watch Expressions, Variables, and Command.
  • 23.
    Quick Test ProCommands Quick Test Pro Commands : The Quick Test Pro commands can be chosen from the menu bar or from a Tool bar. File Tool bar : File tool bar contains buttons for managing the test.
  • 24.
    Quick Test ProCommands Test Tool bar : Test tool bar contains buttons for the commands used when creating or maintaining the tests…
  • 25.
    Quick Test ProCommands Debug Tool Bar : It contains buttons for commands used when debugging the steps in the tests…
  • 26.
    Quick Test ProCommands Action Tool Bar : To view all actions in the test flow or to view the details of a selected action…
  • 27.
    Working with TestObjects in QTP Test Object Model Conceptualization Applying the Test Object Model Concept Viewing Object properties Using Object Spy Demo on Test Object Model features of QTP
  • 28.
    Test ObjectModel Cont… How Quick test Pro learns objects in application ? Quick Test first looks at the object on which user is recording and stores it as a test object & then determines which test object class it fits into by, Mandatory properties Assistive properties.. Ordinal identifier…… Smart Identification..
  • 29.
    Test Object ModelCont… Mandatory properties: For each Test Object class, Quick Test has list of mandatory properties… Assistive properties: Quick Test adds assistive properties one by one to the description until it has compiled a unique description… Ordinal identifier: If the combination of all defined mandatory and assistive properties is not sufficient to create a unique test object description, Quickest also records the value for the selected ordinal identifier. Smart Identification: A Smart Identification definition can help QuickTest identify an object, if it is present, even when the recorded description fails due to changes in one or more property values.
  • 30.
    Test Object ModelHow Quick Test Identifies objects during the test run? Quick test searches for a run time object that exactly matches the description of the test object from the object repository it learned while recording…
  • 31.
    Test Object ModelTest Object : Test Object is an object that Quick Test creates in the test to represent the actual object in the application… Run Time Object : It is the actual object in the web site or application on which methods are performed during the test run..
  • 32.
    Test Object ModelViewing object properties by Object Spy : Using the object spy, users can view the properties of any object in an open application…
  • 33.
  • 34.
    Test Object ModelViewing object methods and methods syntax using object spy… Object Spy enables users to view both the run time object methods, the test object methods associated with an object and to view the syntax for a selected method…
  • 35.
    Managing Test objectsObject Repository Dialog box : - Per Action Mode - Shared Action Mode
  • 36.
    Managing Test objectsIdentifying the Object : - Logical Name - Class Viewing the Objects Property : Type - Constant, Data table property ,variable parameter. Property - Name of the Property Value - The value of the property - Smart Identifier - Add/ Remove
  • 37.
    Managing Test ObjectsAdding or Viewing New objects : - Add New Objects - Object spy - Saves all the object properties and values from a per action object repository to a separate file for use as a shared object repository in another test… - Modify the Test object properties - Finding the Test object properties - Modifying the Logical Names
  • 38.
    Managing Test ObjectsObject Properties Modification Users can modify the properties of the temporary version of the object during the test run with out affecting the permanent values in the object repository - SetTOProperty - GetTOProperty
  • 39.
    Main phases ofQTP testing Process Preparing to record Recording a session on the application Executing the test Enhancing your test Debugging your test Re-executing the tests on a new version of the application Analyzing the test results Reporting defects
  • 40.
    DEMO Please recorda test and run the script. Analyze the test result.
  • 41.
    Types of Checkpoints(Verification Process) Check that a Web page (or any portion of it) is displayed as expected. Checks an area of a Web page or application after capturing it as a bitmap Bitmap Checkpoint Check whether the expected text string is displayed in the expected location on a Web page or dialog box Checks that a text string is displayed in the appropriate place in a Web page or application window Text / Text Area Checkpoint Check how long a Web page takes to load or if a Web page contains broken links. Checks the characteristics of a Web page Page checkpoint Check that the value in a table cell is correct. Checks information in a table Table Checkpoint Check that the image source file is correct. Checks the property values of an image Image Checkpoint Check that a radio button is selected. Checks values of an object’s properties Standard Checkpoint
  • 42.
    Types of CheckpointsCont… Note: XML file checkpoints are used to check a specified XML file; XML application checkpoints are used to check an XML document within a Web page. Checks the data content of XML documents XML Checkpoint Check if the images on a Web page include ALT properties, required by the W3C Web Content Accessibility Guidelines. Identifies areas of a Web site to check for Section 508 compliancy Accessibility Checkpoint Check that the value in a database query is correct. Checks the contents of databases accessed by an application or Web site Database Checkpoint
  • 43.
    Demo on usingcheckpoints Apply different types of checkpoints to the recorded test. Analyze the test results
  • 44.
    Parameterising Tests DifferentTypes of Parameters Test & Action Parameters Data Table Environment Variable Defining a Data Table Parameter Adding Parameter Values to a Data Table Modifying Steps Affected by Parameterization Running and Analyzing a Parameterized Test
  • 45.
    Creating Output ValuesCreating an Output Value Running and Analyzing a Test with Output Values
  • 46.
    Using Regular ExpressionsRegular Expression Syntax Working with Regular Expressions Running and Analyzing a Test with Regular Expressions
  • 47.
    Dividing Tests intoMultiple Actions Working with Multiple Actions Creating New Actions Inserting Existing Actions Parameterizing an Action Running and Analyzing a Multi-action Test Different Types of Actions
  • 48.
    Recovery Scenarios DefiningRecovery Scenarios Creating a Recovery File Understanding the Recovery Scenario Manager Dialog Box Understanding the Recovery Scenario Wizard Welcome to the Recovery Scenario Wizard Screen
  • 49.
    Recovery Scenario Welcometo the Recovery Scenario Wizard Screen Select Trigger Event Screen Specify Pop-up Window Conditions Screen Select Object Screen Set Object Properties and Values Screen Select Test Run Error Screen
  • 50.
    Recovery Scenario SelectProcesses Screen Recovery Operations Screen Recovery Operation Screen Recovery Operation – Click Button or Press Key Screen Recovery Operation – Close Processes Screen Recovery Operation – Function Call Screen
  • 51.
    Recovery Scenario Post-RecoveryTest Run Options Screen Name and Description Screen Completing the Recovery Scenario Wizard Screen Saving the Recovery Scenario in a Recovery File Managing Recovery Scenarios
  • 52.