Qtp training


Published on

Published in: Business, Technology
  • Be the first to comment

Qtp training

  1. 1. QTP 8.2 QUICK TEST PROFESSIONAL 8.2 12/29/10 www.ramupalanki.com
  2. 2. <ul><li>1. Introduction </li></ul><ul><li>2. Recording a Session </li></ul><ul><li>3. Running a Session </li></ul><ul><li>4. Object Management </li></ul><ul><li>5. Synchronization </li></ul><ul><li>6. Check Points </li></ul><ul><li>7. Output Values </li></ul><ul><li>8. Parameterization </li></ul><ul><li>9. Actions </li></ul><ul><li>10. Recovery Scenario Manager </li></ul><ul><li>11. Debugging </li></ul>12/29/10 www.ramupalanki.com
  3. 3. Introduction <ul><li>Mercury Quick Test Professional 8.2 provides the industry’s best solution for functional test and regression test automation - addressing every major software application and environment. </li></ul>12/29/10 www.ramupalanki.com
  4. 4. Why QTP <ul><li>Ease of use: </li></ul><ul><ul><li>QTP allows even novice testers to be productive in minutes. You can create a test script by simply pressing a Record button and using an application to perform a typical business process. </li></ul></ul><ul><ul><li>Using the Active Screen facility, several types of checkpoints for any object to verify that components behave as expected can be created simply by clicking on that object in the Active Screen. </li></ul></ul><ul><ul><li>Data Table, an integrated spreadsheet with the full functionality of Excel, is used to manipulate data sets and create multiple test iterations, without programming, to expand test case coverage. </li></ul></ul><ul><li>QuickTest Professional supports functional testing of all popular environments, including Windows, Web, .Net, Visual Basic, ActiveX, Java, SAP, Siebel, Oracle, PeopleSoft, terminal emulators, and Web services . </li></ul>12/29/10 www.ramupalanki.com
  5. 5. Add-in Manager 12/29/10 www.ramupalanki.com
  6. 6. Keyword View 12/29/10 www.ramupalanki.com
  7. 7. Expert View 12/29/10 www.ramupalanki.com
  8. 8. Create the Basic Test <ul><li>Record user actions </li></ul><ul><li>Save the test </li></ul><ul><li>Verify successful playback </li></ul>12/29/10 www.ramupalanki.com
  9. 9. Record User Actions 12/29/10 www.ramupalanki.com
  10. 10. Start recording on the Mercury Tours Web site. Choose Test > Record or click the Record button. The Record and Run Settings dialog box 12/29/10 www.ramupalanki.com
  11. 11. In the Windows Applications tab, confirm that Record and run on these applications (opened on session start) is selected, and that there are no applications listed. <ul><li>This setting prevents you from inadvertently recording operations performed on various Windows applications (such as e-mail) during a recording session. </li></ul><ul><li>Click OK . </li></ul>12/29/10 www.ramupalanki.com
  12. 12. Recording Modes <ul><ul><li>Normal : recognizes the objects in the application irrespective of their location in the screen. </li></ul></ul><ul><ul><li>Analog : records the exact keyboard and mouse operations with respect to the screen coordinates or the application window. </li></ul></ul><ul><ul><li>Low level : records any object irrespective of support from QTP. Recognizes all run time objects as windows objects. It is used when an object is not identified by Quick test. </li></ul></ul>12/29/10 www.ramupalanki.com
  13. 13. Save the Test <ul><li>The test can be saved into a Windows file system (as below). </li></ul><ul><li>If TestDirector is available and connected with QTP, the test can be saved there. </li></ul><ul><li>QTP creates an entire structure of files and directories to support a single QuickTest script for each saved test. </li></ul>12/29/10 www.ramupalanki.com
  14. 14. Verify Successful Playback <ul><li>Use the ‘Run’ button to begin playback from the top of the test. </li></ul><ul><li>Select the location of the test results- either a new results folder or a temporary folder. </li></ul>12/29/10 www.ramupalanki.com
  15. 15. Running a Session <ul><li>The Run option can be used to run the test from start to end. </li></ul><ul><li>The Run from Step option in the Test menu is used to run the test from a selected step to the end of the current action, if running from the Expert View, or to the end of the test , if running from the Keyword View. Thus it enables us to check a specific part of the application or to confirm that a certain part of the test runs correctly. </li></ul><ul><li>The Update Run option in the Test menu is used to update the Active screens, Checkpoints and the test object descriptions. </li></ul>12/29/10 www.ramupalanki.com
  16. 16. Viewing the Test Results <ul><li>Test results can be stored in their own location (for documentation) or in a temporary location that is overwritten each time the test is run (debugging). </li></ul>12/29/10 www.ramupalanki.com
  17. 17. How QuickTest Works with Objects <ul><li>What are Object Properties? </li></ul><ul><li>A set of characteristics that defines an object’s appearance, values, state and identity in an application. </li></ul><ul><ul><li>QTP captures these object properties during recording. </li></ul></ul><ul><ul><li>Logical Name – Logical name is a value QuickTest usually takes from one of the object properties (like TEXT) to refer to the object in the recorded script. </li></ul></ul>12/29/10 www.ramupalanki.com
  18. 18. Object Repository <ul><li>What is Object Repository? </li></ul><ul><li>Object Repository is a location within the test structure where QuickTest stores object information captured during recording. </li></ul><ul><li>The Object Repository can be used to: </li></ul><ul><ul><li>Rename logical names for readability. </li></ul></ul><ul><ul><li>Add a new object in the repository. </li></ul></ul><ul><ul><li>Configure the object properties used to identify an object. </li></ul></ul>12/29/10 www.ramupalanki.com
  19. 19. Object Repository Object List Object Properties Object Name and Class 12/29/10 www.ramupalanki.com
  20. 20. Object Repository <ul><li>The Object Repository can be Per Action or Shared. </li></ul><ul><li>The shared repository can be used by multiple actions of the same test or by actions from different tests. Test object properties are prone to frequent updation. </li></ul><ul><li>Per Action object repository is used by one or very few tests.Test object properties are modified less frequently . </li></ul>12/29/10 www.ramupalanki.com
  21. 21. Object Spy <ul><li>It can be used to view the properties and values of an object in any open application. Click the pointing hand to select the object in the application. The object’s properties (Test object properties and Run-Time object properties) and methods can be identified. The object’s hierarchy tree is also displayed. To perform other events such as mouse clicks or window focus hold the CTRL key. </li></ul>12/29/10 www.ramupalanki.com
  22. 22. 12/29/10 www.ramupalanki.com
  23. 23. Object Identification 12/29/10 www.ramupalanki.com
  24. 24. Synchronization <ul><li>WHAT IS SYNCHRONIZATION ? </li></ul><ul><li>Synchronization refers to adding a step in the script that instructs Quick Test to wait for a particular object before proceeding to the next step during playback. </li></ul><ul><li>When do you need SYNCHRONIZATION ? </li></ul><ul><li>When you observe that the application takes a longer time to process information sent or respond to a client request, add a synchronization step while recording. For example: </li></ul><ul><li>- A progress bar to reach 100%. </li></ul><ul><li>- A button to become enabled. </li></ul><ul><li>- A window or pop-up message to open. </li></ul>12/29/10 www.ramupalanki.com
  25. 25. How to ADD Synchronization <ul><li>Synchronization can be added ONLY during recording. </li></ul><ul><li>Identify the object to be synchronized. </li></ul><ul><li>Navigate to the window where the object is located. </li></ul><ul><li>Locate the step in the test that corresponds to the object. </li></ul><ul><li>Start recording and add the synchronization point. </li></ul>12/29/10 www.ramupalanki.com
  26. 26. Two ways to set Synchronization <ul><li>Global synchronization value for all Objects. Instructs Quick Test to wait for all the objects for a specific amount of time. </li></ul><ul><li>Synchronization of a specific Object. </li></ul><ul><li> Instructs Quick Test to wait for a specific object only. </li></ul>12/29/10 www.ramupalanki.com
  27. 27. Global synchronization value for all Objects <ul><li>Menu  Test  Settings  Run </li></ul><ul><li>For every object in the test, Quick Test can wait a maximum number of milliseconds specified in the settings </li></ul>12/29/10 www.ramupalanki.com
  28. 28. Synchronization of a Specific Object <ul><li>Menu  Insert  Step  Synchronization Point </li></ul><ul><li>Quick Test shall pause the test until the object property achieves the value specified here (or until the specific timeout amount is exceeded). </li></ul><ul><li>Quick Test uses one of the object’s properties as the waiting criteria. E.g. ‘Text’ property for window, ‘Label’ property for buttons etc. </li></ul>12/29/10 www.ramupalanki.com
  29. 29. Checkpoints In QTP <ul><li>A checkpoint is a verification point that compares a current value for a specified property with the expected value for that property. </li></ul>12/29/10 www.ramupalanki.com
  30. 30. Types Of Checkpoints <ul><li>Standard Checkpoint </li></ul><ul><li>Bitmap checkpoint </li></ul><ul><li>Text checkpoint </li></ul><ul><li>Text Area checkpoint </li></ul><ul><li>Database checkpoint </li></ul><ul><li>XML Checkpoint </li></ul>12/29/10 www.ramupalanki.com
  31. 31. Types and Their Use <ul><li>Standard Checkpoint </li></ul><ul><li>Bitmap Checkpoint </li></ul><ul><li>Checks the property value of the object in an application or Webpage. It checks buttons,Radiobuttons,Comboboxes etc </li></ul><ul><li>Checks the value of an image in the application. </li></ul>12/29/10 www.ramupalanki.com
  32. 32. <ul><li>Text Checkpoint </li></ul><ul><li>Checks whether the text string is displayed in the appropriate place in your application or on a Web page </li></ul>12/29/10 www.ramupalanki.com
  33. 33. <ul><li>Database Checkpoint </li></ul><ul><li>XML Checkpoint </li></ul><ul><li>Checks the contents of a database accessed by the application </li></ul><ul><li>Checks the data content of XML documents in the application . </li></ul>12/29/10 www.ramupalanki.com
  34. 34. When to Use Checkpoints <ul><li>Before creating checkpoints on web objects we have to select web-test option in ADD-IN Manager. </li></ul><ul><li>If the objects developed in HTML we can use Standard Check point. </li></ul><ul><li>If the Objects developed in XML we can use XML Check point. </li></ul>12/29/10 www.ramupalanki.com
  35. 35. How Checkpoints Work - Playback <ul><li>Script Expected Result </li></ul>Execute checkpoint Object: Button Logical Name : OK Property: Enabled Value: True Actual = expected ? Test Results PASS 12/29/10 www.ramupalanki.com
  36. 36. Sample Objects that QuickTest can Verify <ul><li> </li></ul>12/29/10 www.ramupalanki.com WINDOWS WEB Window Browser Edit Field Text Area Drop down list Text Link Menu command Images Radio Button Image Link Checkbox Edit Field Windows Object Drop down list Status Bar Checkbox Text Area Radio Button Tables/ Grids Web Element
  37. 37. How to Add a Checkpoint <ul><li>Select the object in the Active Screen </li></ul><ul><li>Right Click on it and Select ‘Insert Standard Checkpoint’ or Menu  Insert  Checkpoint  Standard Checkpoint </li></ul>12/29/10 www.ramupalanki.com
  38. 38. How to Add a Checkpoint… set expected value <ul><li>Do not automatically select the pre-defined list of properties to check. </li></ul><ul><li>Scroll down the property list to find the property( or properties) that best meets the test requirement. </li></ul>12/29/10 www.ramupalanki.com
  39. 39. Table Checkpoint 12/29/10 www.ramupalanki.com
  40. 40. 12/29/10 www.ramupalanki.com
  41. 41. Database Checkpoint <ul><li>Choose Insert > Checkpoint > Database Checkpoint . The Database Query Wizard opens . </li></ul>12/29/10 www.ramupalanki.com
  42. 42. Database Checkpoint ..contd 12/29/10 www.ramupalanki.com
  43. 43. 12/29/10 www.ramupalanki.com
  44. 44. How to Add a Checkpoint… Test Result 12/29/10 www.ramupalanki.com
  45. 45. Output Values <ul><li>Output Value is used to retrieve the current value of any object in the application and stores it in a specified location. </li></ul>12/29/10 www.ramupalanki.com
  46. 46. Navigation <ul><li>Insert </li></ul><ul><li>Output Value </li></ul><ul><li> Select the type of output value. </li></ul><ul><li>Right click the object in the Active screen and select the type of output value to be added </li></ul>12/29/10 www.ramupalanki.com
  47. 47. Types of Output Values <ul><li>Standard Output Values </li></ul><ul><li>Text Output Values </li></ul><ul><li>To output the property values of most objects like editbox,button,radio button,list box,etc. </li></ul><ul><li>To output text strings displayed in the application </li></ul>12/29/10 www.ramupalanki.com
  48. 48. <ul><li>Text Area Output Values </li></ul><ul><li>Database Output Values </li></ul><ul><li>XML Output Values </li></ul><ul><li>To output text strings displayed within a defined area of the application </li></ul><ul><li>To output the contents of database cells, based on the results of a query on the database. </li></ul><ul><li>To output the values of XML elements and attributes in XML documents </li></ul>12/29/10 www.ramupalanki.com
  49. 49. How to use Output Value Select the output to be considered Select the Property 12/29/10 www.ramupalanki.com
  50. 50. How to use Output Value…Contd. Output Value 12/29/10 www.ramupalanki.com
  51. 51. Parameterization <ul><li>A parameter is a variable that is assigned a value from an external data source at run time. We use parameterization when we want to change the value of properties at run time. </li></ul>12/29/10 www.ramupalanki.com
  52. 52. Types of Parameterization <ul><li>Parameterization can be done in three ways using Quick Test. </li></ul><ul><li>Datatable </li></ul><ul><li>Environment variables </li></ul><ul><li>Random numbers </li></ul>12/29/10 www.ramupalanki.com
  53. 53. DataTable Parameters <ul><li>The Test runs once for each line of data in the DataTable. Each iteration takes a different value from the datatable. </li></ul><ul><li>choose the Run tab </li></ul><ul><li>Test </li></ul><ul><li>Settings </li></ul><ul><li>Specify an option in the Datatable iterations frame. </li></ul>12/29/10 www.ramupalanki.com
  54. 54. Environment variable Parameters <ul><li>The Environment variables can have Quick Test generated values or values supplied from external files. </li></ul><ul><li>Test </li></ul><ul><li>Settings </li></ul><ul><li>Environment </li></ul><ul><li>Choose User-defined from the variable type </li></ul><ul><li>Click New to create your own internal variables </li></ul>12/29/10 www.ramupalanki.com
  55. 55. Random number Parameters <ul><li>It enables us to use random numbers as values in the test. We can specify the range from which the random number is generated. By default, the random number range is between 0 and 100. </li></ul>12/29/10 www.ramupalanki.com
  56. 56. How to Parameterize an Input Value <ul><li>Select the step in the Tree View that contains the recorded input value. </li></ul><ul><li>Click on the text under Value column. </li></ul>12/29/10 www.ramupalanki.com
  57. 57. How to Parameterize an Input Value… contd. -Select the source for paramterization. -Select the parameter name. -Select the data sheet to use. 12/29/10 www.ramupalanki.com
  58. 58. How to Parameterize an Input Value…contd 12/29/10 www.ramupalanki.com
  59. 59. Actions <ul><li>A test is composed of actions or logical sections. The steps we add to the test are added within the test’s actions. By default, each test begins with a single action . </li></ul><ul><li>When we run a test with multiple actions, the Test Results are divided by actions so that we can view the detailed results for each action individually. </li></ul>12/29/10 www.ramupalanki.com
  60. 60. <ul><li>Each action has its own sheet in the Data Table so that we can insert data that applies only to that action. </li></ul><ul><li>Actions can be of three types: </li></ul><ul><li>Non-re-usable: Action can be used in the local test, only once. </li></ul><ul><li>Reusable: Action can be used in the local test, multiple times. </li></ul>12/29/10 www.ramupalanki.com
  61. 61. <ul><li>External: These are reusable actions created in another test. This can be of two types. If a call to an external action is used the action is read only in the calling test. But, any existing action can be inserted as a copy of the original action. In this case, we can modify this copy of the external action in the calling test. </li></ul>12/29/10 www.ramupalanki.com
  62. 62. <ul><li>Actions on Quick Test Window (Keyword View): </li></ul><ul><li>Actions Tool Bar contains buttons and a list of actions, enabling us to view the details of an individual action or the entire test flow. The test flow displays the overall flow of the test with all the actions in the test. </li></ul>12/29/10 www.ramupalanki.com
  63. 63. 12/29/10 www.ramupalanki.com
  64. 64. How to set an Action as Reusable 12/29/10 www.ramupalanki.com
  65. 65. How to Call a Reusable Action Insert  Call to existing Action 12/29/10 www.ramupalanki.com
  66. 66. Recovery Scenario Manager <ul><li>The recovery scenario manager is used to : </li></ul><ul><li>defining the trigger event that interrupts the run session </li></ul><ul><li>specifying the recovery operation(s) required to continue </li></ul><ul><li>choosing a post-recovery test run operation </li></ul><ul><li>specifying a name and description for the recovery scenario </li></ul><ul><li>specifying whether to associate the recovery scenario to the current test and/or to all new tests. </li></ul>12/29/10 www.ramupalanki.com
  67. 67. 12/29/10 www.ramupalanki.com
  68. 68. Components of a Recovery Scenario The event that interrupts the test run (e.g. a pop up screen or run error) The operation that needs to be performed in order to continue running the test. The instructions on how the test should proceed once the recovery operation is performed. 12/29/10 www.ramupalanki.com
  69. 69. Steps to add a Recovery Scenario…contd After clicking on HAND, select the message/ error window. The click on Next. 12/29/10 www.ramupalanki.com
  70. 70. Steps to add a Recovery Scenario…contd 12/29/10 www.ramupalanki.com
  71. 71. Steps to add a Recovery Scenario…contd After clicking on HAND, select the OK button in the Error/Message window. 12/29/10 www.ramupalanki.com
  72. 72. Steps to add a Recovery Scenario…contd 12/29/10 www.ramupalanki.com
  73. 73. Steps to add a Recovery Scenario…contd Give a name and description to the recovery scenario 12/29/10 www.ramupalanki.com
  74. 74. Steps to add a Recovery Scenario…contd 12/29/10 www.ramupalanki.com
  75. 75. Debugging <ul><li>The Pause option in the Debug menu is used to temporarily suspend the run. To resume running a paused test, click the Run button. </li></ul><ul><li>The StepInto (F11) option in the Debug menu is used to run the current line of the test. If the current line of the active test or component calls another action or a function, the called action/function is displayed in the QuickTest window, and the test or component pauses at the first line of the called action/function. </li></ul><ul><li>Step Out Choose Debug > Step Out or click the Step Out button, or press SHIFT+F11 only after using Step Into to enter a action or a user-defined function. Step Out runs to the end of the called action or user-defined function, then returns to the calling action and pauses the run session. </li></ul>12/29/10 www.ramupalanki.com
  76. 76. Breakpoint <ul><li>The InsertRemove Breakpoint (F9) option in the Debug menu is used to stop a test run at a pre-determined place in a test. </li></ul><ul><li>To set a breakpoint: </li></ul><ul><li>1 Click a step or a line in the test or component where you want the run to stop. </li></ul><ul><li>2 Choose Debug > Insert/Remove Breakpoint , press F9, or click the Insert/Remove Breakpoint button. The breakpoint symbol is displayed in the left margin of the Keyword View and Expert View. </li></ul>12/29/10 www.ramupalanki.com
  77. 77. Debug Viewer <ul><li>The DebugViewer option in the View menu is used to view, set, or modify the current value of objects or variables in the test,when a test stops at a breakpoint. </li></ul><ul><li>To open the Debug Viewer pane: </li></ul><ul><li>1 Run a test or component with one or more breakpoints. </li></ul><ul><li>2 When it pauses at a breakpoint, choose View > Debug Viewer or click the Debug Viewer button. </li></ul>12/29/10 www.ramupalanki.com
  78. 78. Debug Viewer 12/29/10 www.ramupalanki.com
  79. 79. Debug Viewer ..Cntd <ul><li>Watch Expressions Tab: Use the Watch Expressions tab to view the current value of any variable or VBScript object that you enter in the Watch Expressions table. Paste or type the name of the object or variable into the Name column and press ENTER to view the current value in the Value column. </li></ul><ul><li>Variables Tab : Use the Variables tab to view the current value of all variables, in the current action or selected subroutine, identified up to the point where the test or component stopped </li></ul><ul><li>Command Tab : Use the Command tab to execute a line of script in order to set or modify the current value of a variable or VBScript object in your test or component. </li></ul>12/29/10 www.ramupalanki.com
  80. 80. Concepts Thank You 12/29/10 www.ramupalanki.com