Sei sulla pagina 1di 109

Software Testing Automation (QTP) ________________________________________________________________________

Quick Test Professional

-1-

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

This book is dedicated to

Lord Vignesh

-2-

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ TABLE CONTENTS 1. Introduction to QTP: ..9 1.1. What is Quick Test Professional?: .9 1.2. How to decide what test case to be Automated?: 9 1.3. How does QTP works?: 10 2. Testing Process: .10 2.1. Planning: 11 2.2. Creating Tests or Components: ..11 a. Either Recording a session on your application or Site: ..11 b. Object Repositories: ..11 2.3. Inserting Checkpoints into your test or Components: 12 2.4. Debugging test Script: .12 2.5. Running the Test Script: .13 2.6. Analyzing the Result: 14 2.7. Reporting Defects: .14 3. What is VB Script: .14 4. Quick Test Professional Window: .15 4.1. Title Bar: .15 4.2. Menu Bar: ..15 4.3. File Toolbar: ..16 4.4. Testing Toolbar: .16 4.5. Debug Toolbar: 16 -3Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ 4.6. Action: .16 4.7. Test Pane: ..17 4.8. Expert view: ..18 4.9. Keyword view: .18 4.10. Active screen: 18 4.11. Datatable: 19 a. Defined Time Data Table: 19 b. Run Time Data Table: 20 4.12. Debug Viewer Pane: ..20 5. Add-in Manager: .21 6. Recording QTP Scripts: ..22 6.1. What are the Modes of Recording: 22 a. General Recording: 22 b. Analog Recording: .23 c. Low Level Recording: 23 6.2. Play Back of QTP Script: .24 A. Modes of Running Test: ..24 a. Verify Mode: 24 b. Debug Mode: ..24 c. Update Mode: .24 B. Sequence of Things happening when the Script is Played Back: 25 7. Snap Shot of Error Message: 25 7.1. Syntax error: 25 7.2. Object not Found in the Repository: 26

-4-

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ 8. Record & Run Settings: ..27 8.1. Selective Record on any Application: ..27 8.2. Selective Recording on added Application: ..27 9. Checkpoints: .28 9.1. Standard Checkpoint: ..29 a. Inserting a Checkpoint During Recording: 29 b. Inserting a Checkpoint after Recording: 30 9.2. Text Checkpoint: .31 a. To add Checkpoint while Recording: .32 b. To add Checkpoints while Editing a Test: ..32 9.3. Text Area Checkpoint: .33 9.4. Bitmap Checkpoint: ..34 a. Inserting a Bitmap Checkpoint during Recording: 35 b. Inserting a Bitmap Checkpoint after Recording:.36 9.5. Database Checkpoint: .37 9.5.1. When Executing a Database Checkpoint, the Following Events Occur: ..39 9.5.2. You can Define Database Checkpoint in a test To Check if: .39 9.5.3. Specify SQL Statements Manually: 40 a. Data Validation: 40 b. Data Integrity: ..40 9.5.4. Create Query using SQL Query: ..41 a. Data Validation: 41 b. Data Integrity: ..42

-5-

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ 9.6. Accessibility Checkpoint: 43 9.7. XML Checkpoint: .44 10. Output Value: 46 10.1. Standard OutPut Value: 46 10.2. Text & Text Area Output Value: ..47 10.3. Database Output Value: ..47 10.4. XML Output Value: ..47 11. Call to New Action: .48 12. Rename Action: 49 13. Reusable Action: .50 14. Call to Copy of Action: ..50 15. Call to Existing Action: .52 16. Call to WinRunner: .54 17. Delete Action: 55 18. Split Action: 55 19. Start & End Transaction: .57 20. Object Spy: .57 21. Object Repository: .60 22. Object Repository Manager & Associate Repository: ..62 23. Recovery Scenario Manager: 66 24. Merge Object Repositories: 71 25. Virtual Object: ..73 26. Virtual Object Collection: 75 -6Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ 27. Step Generator: 76 27.1. Test Objects: .77 27.2. Utility Objects: .78 27.3. Functions: ..79 28. Function Definition Generator: 80 29. Synchronization Point: .82 29.1. Add a Synchronization Point while Recording: 82 30. Parameterization: ..83 30.1. Parameterize through Data Driver Wizard: 84 30.2. Parameterize Through the KeyWord View: 87 31. Object Identification: 89 31.1. To Open the Object Identification Dialog Box: ...89 31.2. Identifying Types of Object Class Properties: .89 31.3. To Modify the Small Identification Properties: 91 32. Breakpoint: 92 32.1. Insert / Remove Breakpoints: .92 33. Data Driven Testing: .93 33.1. Environmental Variable: ..93 33.1.1. Types of Environmental Variable: 93 a. Build In: ....94 b. User-Defined Internal: ....94 c. User-Defined External: ....96 -7Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ 33.2. Data Table Method: 97 a. Internal Data Table Testing: ....97 b. External Data Table Testing: .98 34. Data Base Connecting: .99 34.1. MS Access: 100 34.2. SQL Server: ..101 34.3. Oracle: 102 35. Flat Files: ..103 36. Descriptive Programming: ..104 36.1. Static Descriptive Programming: .104 36.2. Dynamic Descriptive Programming: 105 37. Key-Word Driven Testing: 106

-8-

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

1. Introduction to QTP:
1.1. What is Quick test Professional? Quick test professional is a functional and regression testing tool from hp software , which can record the user actions, keyed in while recording and execute these user actions while we play back(run) test. It can be used to test the functionality of the application in the regression testing phase. 1.2. How to decide what test cases to be automated? When we have a large number of test cases we have to carefully analyze them and group into categories and then decided if that test case should execute on every release/build of the application or not. If the test case is not intended to be executed on every release it should not be automated since if falls into a one-time testing category. Some test cases might be very time consuming to automate where as executing them manually could be just a matter of 5 to 10 minutes. Such type of test cases should be given the least priority in terms of when to automate them. Some test cases may have manual intervention for example: when you create an account in the application someone in your team has to do run some batch processes manually in order for to continue either further testing. These kinds of test cases should not be automated unless you have full control of the backend processes to be run for successful completion of the test using QTP.

-9-

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

1.3. How does QTP works? QTP has two components, VB Script Language. Object Repository. While recording the user actions on the applications QTP will generate the VB script statements, which indicate the actions it is supposed to perform. While recording, QTP will also learn the objects present in the application, say for example a window, checkbox, radio button etc., and stores these objects in a place called object repository. In order to run the test successfully the corresponding object exists in the object repository.

2. Testing Process:
The Quick Test Testing Process consisting of the following min phases to convert our selected manual Functional Testing cases into Automation Test Script: Planning Creating Tests or Component. Inserting Checkpoints into your test or components. Debugging Test Script. Running the Test Script. Analyzing the Result. Reporting Defects.

- 10 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

2.1. 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.2. Creating Tests or Component: We can create test or component by a.) either recording a session on your application or web site. As we navigate through the application or site, Quick test 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

- 11 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ your test or component with special testing options and/or with programming statements.

2.3. Inserting checkpoints into your test or components: A checkpoint is a verification point that compares a recent value for a specified property with the expected value for the property. This enables you to identify whether the web site or application is functioning correctly. 2.4. Debugging Test Script: 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, Quick Test 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

- 12 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ 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 Quick Test to improve your test or component and/or add programming statements to achieve more complex testing goals. 2.5. Running the Test Script: 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, Quick Test 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. your test) If we for parameterized each set of the data test with we Data Table parameters, Quick Test repeats the test (or specific actions in values 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 Out commands to run a test or component step by step. We can also set breakpoints to pause the test or component

- 13 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ 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.

2.6. Analyzing the Result: 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. 2.7. Reporting Defects: If Quality Center is installed, we can report the defects fond out to a database. We can instruct Quick test to automatically report each failed step in the test or component, or we can report them manually from the Test Results window.

3. What is VBScript?
VBScript is a subset of Visual Basic 4.0 language. It was developed by Microsoft to provide more processing power to Web pages. VBScript can be used to write both server side and client side scripting. (If you already know Visual Basic or Visual Basic for Applications (VBA), VBScript will be very familiar. Even if you do not know Visual Basic, once you learn VBScript, you are on your way to programming with the whole family of Visual Basic languages.)

- 14 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

4. Quick Test Professional Window:

The quick test window contains the following key elements: 4.1. Title Bar: this bar displays the name of the currently opened test.

- 15 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

4.2. Menu Bar: this bar displays menus of quick test professional commands.

4.3. File Toolbar: this bar contains buttons to assist us in creating and managing out test.

4.4. Testing Toolbar: this toolbar contains buttons to assist us in the testing process.

4.5. Debug Toolbar: this toolbar contains buttons to assist us in debugging tests.

Note: This debug toolbar is not displayed when you open quick test for the first time. You can display the debug toolbar by choosing View/ Toolbars/ Debug.

- 16 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ 4.6. Action Toolbar: This toolbar contains buttons and a list of actions, enabling us to view the details of an individual action or the entire test flow.

Note: This action toolbar is only displayed in the keyword view. It is not displayed when you open quick test for the first time. You can display the action toolbar by choosing view>toolbars> action. If you insert a reusable or external action in a test, the action toolbar is displayed automatically in the keyword view. 4.7. Test pane: the test pane contains the keyword view and expert view tabs. 4.8. Expert view:

- 17 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Scripts (Scripting) are written in Expert View. Advanced testers can view and edit their tests in the Expert View. Any changes made in the Expert View are automatically synchronized with the Keyword View. In Expert view we can use different Scripting languages supported by QTP Ex - VBScript, JavaScript etc, to automate our Tests. Expert view supports various build in functions and classes of scripting language we use to automate our tests. 4.9. Keyword View:

Keyword view in QTP is also know as Icon Based view Expert view which displays each and every operation we perform in the form of a script comprised of Statements but In Keyword View it displays as Tree Structure with object name and self generated description about the object For each object and method in expert view statements there exists a row in keyword view. Any modifications in Expert view will reflect in Keyword View and Vice Versa. - 18 Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ We can't directly delete an action in expert view but can in Keyword view. We can modify the object in keyword view which will reflect in expert view. 4.10. Active Screen: It provides a snapshot f our application build as it appears when we perform a certain step during the recording session. It is easy to insert the checkpoints, output values, and easy to add objects to the object repository for recognizing objects. However, it occupies lot of memory space to store snap shots. You can display the Active Screen by choosing view>Active Screen

4.11. Data Table:


There are two types of Data Table: a. Defined Time Data Table:

- 19 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

The data table assists you in parameterize your test with multiple test data. Here the data table consists of two types of sheets. Global sheet: This sheet is common for all the Actions in all test pages. This is one of the default sheets. Local sheet (Action 1): This sheet is used only for the particular action. b. Runtime Data Table:

This data table is available in the result window. This data table also contains the same sheet which is available in the defined time data table. 4.12. Debug Viewer Pane: It assists us in debugging our test script. The debug viewer pane contains the watch Expression, Variables and Command tabs. The debug viewer pane is not displayed when you open Quick test for the

- 20 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ first time. If you want to display the debug viewer, follow this path View>Debug Viewer.

Watch: - The Watch tab enables you to view the current value of any variable or VBScript expression that you added to the Watch tab. Variables: - During a run session, the Variables tab displays the current value of all variables that have been recognized up to the last step performed in the run session. Command: - The Command tab enables you to run a line of script to set or modify the current value of a variable or VBScript object in your script. When you continue the run session, Quick Test uses the new value that was set in the command.

5. Add-In Manager:

- 21 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

The Add-in Manager dialog box enables Quick Test Professional to recognize objects in the developed environment of AUT. The list of add-ins that appears in the Add-In Manager dialog box is dependent on your license. The default add-ins is Activex, Visual Basic and Web. Additional add-ins requires installing the appropriate software before launching quick test for the add-ins to appear in Add-in Manager. An add-in will be loaded if you check it in the Add-in Manager dialog box.

6. Recording QTP script:


QTP allows you to record our manual operations in three types of modes-General recording, Analog Recording, Low Level Recording. Generally, the automation test creation starts with recording. In this phase, QTP creates executable statements in VB script, which are equal to our manual actions on build. 6.1. What are the modes of recording? There are there modes

- 22 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ General Recording. Low Level. Analog. a. General Recording: To record mouse and keyboard operations with respect to objects and windows in our application build, like context sensitive mode in win runner, we can use the general recording mode in QTP. To select this mode, follow one of the following procedures. Click record button in Testing Toolbar. Automation Menu>Record. Shortcut key F3. b. Analog Recording mode: In this mode QTP records the mouse movements and key strokes on the keyboard as tracks so that it can help you in testing the situations like signature scanning or handwriting or drawing some objects on the screen or in a window etc. To select analog Recording, follow these options. Automation Menu>Analog Recording. Shift+Alt+F3. c. Low level recording: To record mouse pointer movements on the desktop along with time, we can use low level recording, e.g., time-Based operations. To select this mode, perform one of the options. Automation menu>Low Level recording. - 23 Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Ctrl+Shift+F3. The analog and low level recording modes can be selected only after hitting the record button. In the picture below the first icon is for analog recording and the second one is for low level recording.

Analog and low level recording modes can only be selected after starting to record and going to the automation menu.

6.2. Playback of QTP scripts:


A. What are the modes of running test in qtp and what do they mean? There are three modes of replaying the test. These are not listed on the toolbar. When we hit the run button we get the run dialogue box, which gives us two options. To save the results in new run results folder. This is the verify mode. To save the result in temporary run result s folder overwriting the earlier results. This is the debug mode. When we need to run the test to update the checkpoints go to automation menu and select update run mode. a. Verify mode:

- 24 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ If the test engineer wants to save the results of the test run to compare any verify with the future runs of the same test he would go with the verify mode. b. Debug mode: If the test engineer does not want to save the results as he is yet to finish the script or he is testing his QTP coding logic he would run the test in the debug mode. c. Update mode: If a test engineer wants to update the expected results while running the test, say for example while recording the script the calendar date was 1020/2008 and while executing the test it is a different date(system date), then the test should be run in the update mode otherwise the test would fail because of the changed properties of the object. B. Sequence of things happening when the script is played back: QTPs inbuilt interpreter checks for the syntax errors in the script. It checks to see if the object specified in the script exists in the repository. It checks if the object specified in the script exists on the application under test. Does the action/task specified in the script. During script execution if any of the above phases encounter the error, then an error window pops up depending on the situation.

- 25 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

7. Snapshots of the error messages:


Syntax error:

Object not found in the repository:

Quick Test Professional is one of the Functional Testing & Regression Testing Tool. Quick test professional is a software testing tool that provides you an automated solution for functionality testing. Quick Test Professional enables you to automate manual test cases. This automation of test cases results in increased productivity of the testing team and increased reusability of tests. QTP is mercurys advanced keyword-Driven Testing. With QTP you will able to test

- 26 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Standard Windows Application. Web Objects, Active X Controls, .Net Java. SAP. Visual Basic applications. Siebel Oracle PeopleSoft

8. Record and Run Settings:


8.1. Selective record on any application: It is common for both window based application and web based application.

However, it is mandatory in QTP when you click start recording button. 8.2. Selective recording on added application: It is common for both window based application and web based application.

- 27 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ If you have to create test on specified applications, we have to click add button to browse our required application paths. To Open Record and Run Settings Step 1: Click on Record Button in the Testing Toolbar.

9. Checkpoints:
A checkpoint defines the observation on application build functionality to compare our expected value of manual case and the actual build value. A checkpoint is a verification point that compares a current value for a specified property with the expected value for that property. This enables you to identify whether your Web site or application is functioning correctly. We can use the following checkpoints in qtp automate the functionality checklists or coverage. Standard checkpoint. Text checkpoint. Text area checkpoint. Bitmap checkpoint. Database checkpoint. Accessibility checkpoint.

- 28 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Xml Checkpoint (from application). Xml checkpoint (from Resource).

9.1. Standard checkpoint: Standard checkpoint checks the property value of an object in your application or web page. The standard checkpoint checks a variety of objects, such as buttons, radio buttons, combo boxes, lists, etc., for example, you can check whether a radio button is activated after it is selected or you can check the value of an edit field or you can check the focus of a default button. We can use this checkpoint to verify the properties of objects, like as GUI checkpoint in winrunner. Inserting Checkpoint: We can insert the checkpoint to the application by two methods Inserting a checkpoint during Recording. Inserting a checkpoint after recording. a. Inserting a checkpoint during recording:

- 29 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 1: Click on Record Button in Automation Menu or Record button in Testing Toolbar. Step 2: Open the particular application that you want to insert the checkpoint. (Window Based Application or Web Based Application). Step 3: Open the Standard Checkpoint by Insert> Checkpoint> Standard Checkpoint. The cursor changes to a pointer hand. Step 4: Now click on the applications object which you want to insert standard checkpoint. The Object Selection Checkpoint Properties dialog box appears. Step 5: In the Object Selection Checkpoint Properties dialog box, click OK. The checkpoint Properties dialog box appears. Step 6: Check the properties for which you want to add checkpoints and uncheck all other properties. The value of the property appears in the Constant field. Step 7: Modify the value of the property (Expected Value), if required. Step 8: Click on Ok to insert the Checkpoint. Step 9: Execute the Script to verify the output in the Result window. b. Inserting a checkpoint after recording: To add a checkpoint after recording a test, you are Active Screen to select the fields for which you want to add checkpoints. If Active Screen is not active, click the Active Screen button.

- 30 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

To add a Standard checkpoint from Active Screen Step 1: On Active Screen, right click the object for which you want to add checkpoint and select Insert Standard Checkpoint from the menu. The Object Selection-Checkpoint Properties dialog box appears. Step 2: Click OK. The Checkpoint Properties dialog box appears. Step 3: Check the properties for which you want to add checkpoints and uncheck all other properties. The value of the property appears in the Constant field. Step 4: Modify the value of the property (Expected Value), if required. Step 5: Click on Ok to insert the Checkpoint. Step 6: Execute the Script to verify the output in the Result window.

9.2. Text Checkpoint:


Text Checkpoint checks that a text string is displayed in the appropriate place on a Web page or application. For example, suppose a Web page displays the sentence Flight departing from New York to San Francisco. You can create a text checkpoint that checks that the words New York are displayed between Flight departing from and to San - 31 Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Francisco. To validate the existence text is an object, we can use checkpoint. This checkpoint compares our expected value with corresponding object in four ways: Match Case. Exact Match. Ignore Spaces. Text not Displayed (allows blank space as valid)

You can add a text checkpoint while recording or editing steps in a Windows- or Web-based application. a. To add a text checkpoint while recording: Step 1: Click on Record button. Step 2: Display the page, window, or screen containing the text you want to check. Step 3: Choose Insert > Checkpoint > Text Checkpoint, or click the Insert Checkpoint or Output Value button Checkpoint. The QuickTest window is hidden, and the pointer changes into a pointing hand. Step 4: Click the text string for which you want to create the checkpoint. The Text Checkpoint Properties dialog box opens. Step 5: Specify whether it is expected as constant or parameter and then click OK. Step 6: A checkpoint statement is added for the selected object. and choose Text

- 32 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 7: Execute the Script to see the Result.

b. To add a text checkpoint while editing a test: Step 1: Make sure the Active Screen button is selected.

Step 2: Click the step where you want to add a checkpoint. The Active Screen displays the page or screen corresponding to the highlighted step. Step 3: Highlight a text string on the Active Screen. Step 4: Right-click the text string and choose Insert Text

Checkpoint. The Text Checkpoint Properties dialog box opens. Step 5: Specify the settings for the checkpoint. Step 6: Click OK to close the dialog box. A checkpoint statement is added for the selected object.

9.3. Text Area Checkpoint:


Text area checkpoint checks that string is displayed within a defined area in an application build, according to specified criteria. For Example, your Visual Basic application has a button that says View Doc<Num>, where <Num> is replaced by a four digit code entered in a form elsewhere in the application. You can create a text area checkpoint to confirm that the number displayed on the button is same as the number entered in the form. Hence, to validate the existence of text in the specified screen area, it is better to use this checkpoint. This

- 33 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ checkpoint allows four types of comparison between the expected value and selected screen area value: Match case. Exact Match. Ignore Spaces. Text Not Displayed (Allows blank space as valid).

You can add a text area checkpoint only while recording a test or component on Windows-based applicationsStandard Windows, Visual Basic, and ActiveX. Step 1: Choose Insert > Checkpoint > Text Area Checkpoint, or click the arrow next to the Insert Checkpoint button pointer turns into a crosshairs pointer. Step 2: Define the area containing the text you want Quick Test to check by clicking and dragging the crosshairs pointer. (See Considerations for Defining the Text Area.) Tip: Hold down the left mouse button and use the arrow keys to make precise adjustments to the defined area. Release the mouse button after outlining the area required. If the area you defined is associated with more than one object, the Object SelectionText Area Checkpoint Properties dialog box opens. and choose Text

Area Checkpoint. The Quick Test window is hidden, and the mouse

- 34 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 3: Select the object for which you are creating the checkpoint. The Text Area Checkpoint Properties dialog box opens. Step 4: Specify the checkpoint settings. Step 5: Click OK to close the dialog box. A checkpoint statement is added for the selected object in the Keyword View and Expert View.

9.4. Bitmap Checkpoint:


Bitmap checkpoint checks an area of your web page or application as a bitmap. You use a bitmap checkpoint to compare an expected image to the actual image at run time, Pixel by Pixel. For Example, you have a web site that displays a map of a city which is specified by a user. 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 the map. By using the bitmap checkpoint, you can check whether the map zooms in correctly comparing with both, old map and new map. Let us take another example. Suppose you have an application newly build that can display your company log. You can record the new logo and using the bitmap checkpoint, you can check that logo through the comparison of both the old build version logo and the current new build version logo for correctness. Winrunner allows the static images only for comparison. However, QTP allows static images and dynamic images for comparison. To compare dynamic images, test engineers select multimedia option in the Add-in Manager. This checkpoint covers full images or, if required, part of images.

- 35 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ A bitmap checkpoint can be added to a test in two ways: a. Inserting a bitmap checkpoint during Recording:

Step 1: Click on Record Button in Automation Menu or Record button in Testing Toolbar. Step 2: Open the particular application that you want to insert the checkpoint. (Window Based Application or Web Based Application). Step 3: Open the Standard Checkpoint by Insert> Checkpoint> Bitmap Checkpoint. The cursor changes to a pointer hand. Step 4: Use the pointer hand cursor to select the bitmap that you want to check. The Object Selection-Bitmap Checkpoint Properties dialog box appears. Step 5: Click OK to close the Object Selection Bitmap Checkpoint Properties dialog box. The Bitmap Checkpoint Properties dialog box appears. Step 6: The Bitmap Checkpoint Properties dialog bo x displays the bitmap that you want to check. Step 7: Click OK to close the Bitmap Checkpoint Properties dialog box. Step 8: Execute the script to analyze the result in the Result window.

- 36 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ b. Inserting a Bitmap checkpoint after recording: To add a checkpoint after recording a test, you are Active Screen to select the fields for which you want to add checkpoints. If Active Screen is not active, click the Active Screen button.

To add a Bitmap checkpoint from Active Screen: Step 1: On Active Screen, right click the object for which you want to add checkpoint and select Insert Bitmap Checkpoint from the menu. The Object Selection-Bitmap Checkpoint Properties dialog box appears. Step 2: Click OK. The Checkpoint Properties dialog box appears. Step 3: You want to check Bitmap for particular area means, click on Select Area button and select the particular area in the image, if required. Step 5: Click on Ok to insert the Checkpoint.

- 37 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 6: Execute the Script to verify the output in the Result window.

9.5. Database Checkpoint:

To automate backend testing on our application build, test engineers use database checkpoint. In backend-testing, the test engineers validate the impact of front-end operations on backend tables content in terms of Data Validation and Data Integrity. Data Validation means that the correctness of front-end values which are stored into backend tables. (or) It is nothing but to check whether the new values entered in the front end, that same value will be entered in the database or not.

- 38 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Data Integrity means that the impact of newly stored values on existing values of database tables.

9.5.1. When executing a database checkpoint, the following events occur: 1. The test arrives at the database checkpoint step and connects to the database. 2. Quick test sends a query to the database to retrieve the actual data. 3. Quick test gathers the result set of query, which provides the actual data. 4. Quick test compares the actual data with the expected data, which is stored in the database checkpoint, to determine if the test passed or failed. 9.5.2. You can define database checkpoint in a test to check if: The data is saved to the correct tables and columns of the database. The data is updated in the database when a record is inserted, updated, or deleted in the AUT (Application under Test). This process is also called as data Presistence. The data entered using the AUT is represented correctly in the database. Some of the properties that you check for data type, format, length and Spacing. The data entered into the database is not duplicate. There are Two Ways to open Database in QTP by

- 39 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Create Query using Microsoft Query. Specify SQL statements manually.

9.5.3. Specify SQL Statements Manually: a. Data Validation: Step 1: Open the Application and Enter the New Values in the Front End. Step 2: To insert Checkpoint, Click on Insert>Checkpoint>Database Checkpoint. Step 3: The Database Query Wizard-Connect to database using ODBC screen gets displayed. Step 4: Choose, Specify SQL Statements Manually option and click on Next. Step 5: The Database Query Wizard-Specify SQL Statement Screen get displayed, here we want to insert the Database Path for that click on Create. Step 6: Select Data Source Screen Displayed, Click on Machine Data Source. Step 7: Select Particular Database eg: QT_Flight32, click on OK. Step 8: Enter the SQL Query in Database Query Wizard-SQL Statement field as select * from orders to open the full Database, and click on Finish. Step 9: Now it displays the database for the application, then check the Result for Data Validation. b. Data Integrity:

- 40 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 1: Open the Application and open the Existed data from the database in Front End. Step 2: Modify the value in the Front End, and Click on Update the Value. Step 3: To insert Checkpoint, Click on Insert>Checkpoint>Database Checkpoint. Step 4: The Database Query Wizard-Connect to database using ODBC screen gets displayed. Step 5: Choose, Specify SQL Statements Manually option and click on Next. Step 6: The Database Query Wizard-Specify SQL Statement Screen get displayed, here we want to insert the Database Path for that click on Create. Step 7: Select Data Source Screen Displayed, Click on Machine Data Source. Step 8: Select Particular Database eg: QT_Flight32, click on OK. Step 9: Enter the SQL Query in Database Query Wizard-SQL Statement field as select * from orders to open the full Database, and click on Finish. Step 10: Now it displays the database for the application, then check the Result for Data Integrity.

9.5.4. Create Query using SQL Query: a. Data Validation: Step 1: Open the application and enter the new values in the Front End. Step 2: To insert Checkpoint, Click on Insert>Checkpoint>Database Checkpoint.

- 41 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 3: The Database Query Wizard-Connect to database using ODBC screen gets displayed. Step 4: Choose, Create Query using Microsoft Query and click on Next. Step 5: Instruction for Microsoft Query Screen Displays and click on OK. Step 6: Choose Data Source Screen opens, from this screen choose the Database. E.g.: QT_Flight32*, and click on OK. Step 7: Query Wizard-Choose Column Screen Displays, from this select the Column you want to add to Data table, Click on next. Step 8: If you want filter the column name means filter the column name in the Query Wizard-Filter data, and click on next. Step 9: if you want to sort the column means, sort it in Query WizardSort Order, Click on Next. Step 10: Select Exit and return to Quick Test Professional Radio Button in Query Wizard Finish screen to display the value in the Data table. Step 11: Select View data or Edit query in Microsoft Query Radio Button in Query Wizard Finish Screen to Display the value in the Microsoft Query. Step 12: Analyze the Result. b. Data Integrity: Step 1: Open the Application and open the Existed data from the database in Front End. Step 2: Modify the value in the Front End, and Click on Update the Value. Step 3: To insert Checkpoint, Click on Insert>Checkpoint>Database Checkpoint. Step 4: The Database Query Wizard-Connect to database using ODBC screen gets displayed. Step 5: Choose, Create Query using Microsoft Query and click on Next.

- 42 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 6: Instruction for Microsoft Query Screen Displays and click on OK. Step 7: Choose Data Source Screen opens, from this screen choose the Database. E.g.: QT_Flight32*, and click on OK. Step 8: Query Wizard-Choose Column Screen Displays, from this select the Column you want to add to Data table, Click on next. Step 9: If you want filter the column name means filter the column name in the Query Wizard-Filter data, and click on next. Step 10: if you want to sort the column means, sort it in Query WizardSort Order, Click on Next. Step 11: Select Exit and return to Quick Test Professional Radio Button in Query Wizard Finish screen to display the value in the Data table. Step 12: Select View data or Edit query in Microsoft Query Radio Button in Query Wizard Finish Screen to Display the value in the Microsoft Query. Step 13: Analyze the Result.

9.6. Accessibility Checkpoint:


Accessibility Checkpoint recognizes areas of your Web site that may not conform to the World Wide Web Consortium (W3C) Web Content Accessibility Guidelines. For example, check if the images on a Web page include ALT properties, required by the W3C Web Content Accessibility Guidelines.

Accessibility checkpoints are supported for the Web add-in environment (or) The Section 508 criteria for Web-based technology and information systems are based on access guidelines developed by the Web Accessibility Initiative of the World Wide Web Consortium (W3C). You can add accessibility checkpoints to help you quickly identify areas of - 43 Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ your Web site that may not conform to the W3C Web Content Accessibility Guidelines. You can add automatic accessibility checkpoints to each page in your test, or you can add individual accessibility checkpoints to individual pages or frames.

9.7. XML Checkpoint: You create XML file checkpoints to directly access and verify specific XML files in your system. You can create an XML file checkpoint while you are recording or editing your test. To create an XML file checkpoint: Step 1: Choose Insert > Checkpoint > XML Checkpoint (From Resource) or click the Insert Checkpoint or Output Value toolbar button , and select XML Checkpoint (From Resource). The XML

Source Selection - Checkpoint Properties dialog box opens.

Step 2: Select Create new checkpoint from file. Enter the file path or Internet address of the XML file. Alternatively, click the browse button to open the Open XML File dialog box, and then navigate to the XML file for which you want to create a

- 44 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ checkpoint. You can specify an XML file either from your file system or from Quality Center. Select the file and click Open. The file path and name are entered in the box. Step 3: Click OK in the XML Source Selection - Checkpoint Properties dialog box. The XML Checkpoint Properties dialog box opens.

Step 4: In the Name box, either accept the name that QuickTest assigns to the checkpoint or specify another name for it. By default, the checkpoint name is the name of the test object on which the checkpoint is being performed. If you rename the checkpoint, make sure that the name is unique, does not begin or end with a space, and does not contain the following character/combination of characters: " := @@

- 45 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 5: Select the items to check for the checkpoint Step 6: When you finish setting your checkpoint preferences, click OK to add the XML checkpoint. A checkpoint similar to the following is added to the Keyword View.

QuickTest inserts this step as follows in the Expert View: XMLFile("availcities.xml").Check CheckPoint("availcities.xml")

10. Output Value:


Output value is a step in which one or values captured at a specific point in your test or component and stored for duration of the run session. These values can be used later in the different point in application. 10.1. Standard Output Value. You can use standard output values to output the property values of most objects. For example, in a Web-based application, the number of links on a Web page may vary based on the selections a user makes on a form on the previous page. You could create an output value in your test to store the number of links on the page. You can use standard output values to output text strings by specifying the text property of the object as an output value.

10.2. Text Output Value & Text Area Output Value: You can use text output values to output text strings displayed on a Web page or application. When creating a text output value, you can - 46 Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ output a part of the object's text. You can also specify the text before and after the output text. You can use text area output values to output text strings displayed within a defined area of a screen in a Windows application. For example, suppose that you want to store the text of any error message that appears after a specific step in the Web application you are testing. Inside the If statement, you check whether a window exists with a known title bar value, for example Error. If it exists, you output the text in this window (assuming that the window size is the same for all possible error messages).

10.3. Database Output Value: You can use database output values to output the value of the contents of database cells, based on the results of a query (result set) that you define on a database. You can create output values from the entire contents of the result set, or from a part of it. During the run session, Quick test retrieves the current data from the database and outputs the values according to the settings that you specified.

10.4. XML Output Value (From Application) & XML Output Value (From Resource). You can use XML output values to output the values of XML elements and attributes in XML documents. After the run session has finished, you can view summary results of the XML output values in the Test Results window. You can also view detailed results by opening the XML Output Value Results window.

- 47 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ For example, suppose that an XML document in a Web page contains a price list for new cars. You can output the price of a particular car by selecting the appropriate XML element value to output.

11. Call To New Action:You can create new actions and add calls to them during a recording session or while designing or editing your test. To create a new Action in your Test:

Step 1: Choose Insert > Call to New Action or click the Insert Call to New Action button opens. . The Insert Call to New Action dialog box

- 48 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Step 2: Insert Call to New Action dialog box appears. Step 3: In the Name Field, type the name of the Action. Step 4: Choose the location of the new action. Step 5: Click OK.

12. Rename Action:


To make your test easy to understand provide descriptive names to each action.

To modify an action name. Step 1: Select Edit>Action>Rename Action.

- 49 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 2: Another Method Shift+F3. Step 3: Rename Action dialog box appears.

Step 4: Modify the name in the New Name, and click on OK. After Renaming the actions name, all the actions will be arranged in the alphabetical order but during execution the QTP execute the Action (Script) which was created first.

13. Reusable Action: An action that can be called multiple times


by the test with which it is stored (the local test), as well as by other tests. Step 1: select the particular action in Action toolbar. Step 2: Select Edit>Action>Action Properties. Step 3: Action Properties dialog box opens, in this dialog box under General tab select Reusable Action Checkbox at the Bottom of the Left. Step 4: Click on OK to apply the Reusable Action. Note: you should make an action Reusable only after you record and enhance your tests completely. Other testers might start calling the action as soon as you make it reusable.

14. Call to Copy of Action:


Inserting Calls to Copies of Actions When you insert a call to a copy of an action into a test, the original action is copied in its entirety, including checkpoints, parameterization, the corresponding action tab in the Data Table, plus any defined action

- 50 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ parameters. If the test you are copying has objects in the local object repository, the copied action's local object repository is also copied together with the action. The action is inserted into the test as an independent, non-reusable action (even if the original action was reusable). Once the action is copied into your test, you can add to, delete from, or modify the action just as you would with any other non-reusable action. Any changes you make to this action after you insert it affect only this action, and changes you make to the original action do not affect the copied action. Before applying call to copy of action we need to apply reusable action and save it. To create a copy of an action and call the copy in your test: Step 1: While recording or editing your test, choose Insert > Call to Copy of Action, right-click an action icon and select Insert Call to Copy of Action, or right-click any step and select Action > Insert Call to Copy. The Select Action dialog box opens.

Step 2: Use the From test browse button to find the test containing the action you want to copy. The Action box displays all local actions (actions that are stored with the test you selected). - 51 Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 3: In the Action list, select the action you want to insert. When you select an action, its type (Non-reusable or Reusable Action) and description, if one exists, are displayed. This helps you identify the action you want to copy. Step 4: Select Edit new action Properties Checkbox to modify the script after inserting. Step 5: In location field select After the Current Step if it is Reusable action. Step 6: Click on OK to copy the Action.

15. Call to Existing Action:


You can insert a call to a reusable action that is stored in your current test (local action), or in any other test (external action). Inserting a call to an existing action is similar to linking to it. You can view the steps of the action in the action view, but you cannot modify them. The called action's local object repository (if it has one) is also read-only. If you call an external action, you can choose, however, whether you want the data from the action's data sheet to be imported as a local, editable copy, or whether you want to use the (read-only) data from the original action. To modify a called, external action, you must open the test with which the action is stored and make your modifications there. The modifications apply to all tests that call that action. If you chose to use the original action's data when you call an external action, then changes to the original action's data are applied as well. To insert a call to an existing action:

- 52 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 1: Choose Insert > Call to Existing Action, right-click an action icon and select Insert Call to Existing Action, or right-click any step and select Action > Insert Call to Existing. The Select Action dialog box opens.

Step 2: Use the From test browse button to find the test containing the action you want to copy. The Action box displays all local actions (actions that are stored with the test you selected). Step 3: In the Action list, select the action you want to insert. When you select an action, its type (Non-reusable or Reusable Action) and description, if one exists, are displayed. This helps you identify the action you want to call. Step 4: In location field select After the Current Step if it is Reusable action. Step 5: Click on OK to copy the Action.

16. Call to WinRunner:

- 53 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ When QuickTest links to WinRunner to run a test, it starts WinRunner, opens the test, and runs it. Information about the WinRunner test run is displayed in the QuickTest Test Results window. You can insert a call to a WinRunner test using the Call to WinRunner Test dialog box or by entering a TSLTest.RunTestEx statement in the Expert View. To insert a call to a WinRunner test using the Call to WinRunner Test dialog box: Step 1: Choose Insert > Call to WinRunner > Test. The Call to WinRunner Test dialog box opens.

Step 2: In the Test path box, enter the path of the WinRunner test or browse to it.

- 54 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 3: After opening the winrunner file, just select Close winrunner after running the test for closing the winrunner after executing the script it automatically closes the Win runner. Step 4: Click on OK, to insert the Script in the QTP. Step 5: Execute the Script to analyse the Result. 17. Delete Action:

Delete action is to delete the Action from the test. When you delete a reusable action from a test, the action is removed from the test flow list. The actions local data sheet is also removed. The original action is not affected. Step 1: Select the particular action you want to delete. Step 2: Select Edit >Action>Delete Action. Step 3:Particular Action will be Deleted.

18. Split Action:


You can split an action that is stored with your test into two sibling actions or into parent-child nested actions. When you split an action, the second action starts with the step that is selected when you perform the split action operation. You cannot split an action and the option is disabled when:

an external action is selected the first step of an action is selected recording a test running a test you are working with a read-only test

- 55 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ When you split an action in your test that uses a local object repository:

Quick Test makes a copy of the local object repository. The two actions have identical local object repositories containing all of the objects that were in the original local object repository. If you add objects to one of the split actions, the new objects are added only to the corresponding local object repository.

To Split an Action: Step 1: Enter the Script for the particular application. Step 2: Insert the Cursor on the Particular line you want to split. Step 3: Select Edit>Action>Split Action. Step 4: The Split Action dialog box appears. Step 5: In the Action Are Section, select one of the following options: Independent of each Other: Creates two new independent actions. Nested: Creates parent and child actions, where the last step in the parent action calls the child action. Step 6: In the 1st Action Section, in the Name field, type a name for the first action. Step 7: In the 2nd Action Section, in the Name field, type a name for the second action. Step 8: Click OK to close the Split Action dialog box. Step 9: Analyze the Result for Split Action.

19. Start Transaction and End Transaction:

- 56 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ It is used to find the execution time of enclosed VB script Statements. Each transaction name should have an associated Start Transaction and End Transaction. The Start Transaction statement must appear before the associated End Transaction. A transaction can be inserted anywhere in your test, but must start and end within the same action. Inserting Start and End Transaction: Step 1: Enter the Script in the test. Step 2: Place the cursor at the required place in the test Script to enclose. Step 3: Click on Insert>Start Transaction. Step 4: Start Transaction dialog box appears. Step 5: Then enter the start transaction Name. Eg: Login. Step 6: Select Insert Statement as Before Current Step, Click on OK. Step 7: Now Start Transaction Script will be inserted in front of the current step you selected. Step 7: Click on Insert>End Transaction. Step 8: End Transaction dialog box appears. Step 9: Then Enter the End Transaction Name. Eg: Login. Step 10: Select Insert Statement as After Current Step, click on OK. Step 11: Now End Transaction Script will be inserted at the end of the current step you selected. Step 12: Execute the script to Analyze the Result.

20. Object Spy: Object spy is used to identify the applications objects properties. (or) Using the Object Spy pointing hand mechanism, you can view the supported properties and methods of any object in an open application. - 57 Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ As you move the pointing hand over the objects in the application, their details are displayed in the Object Spy. These details may include the test object's hierarchy tree, its properties and values, and the methods associated with the object. For methods, the syntax is also displayed. In most environments, you can choose to view the test object properties and methods or the run-time (native) properties and methods. In some environments, the test object is also highlighted in the application as you move the pointing hand over it. This enables you to visually distinguish between the various test objects in the application. Step 1: Open your application to the page containing the object on which you want to spy. Step 2: Choose Tools > Object Spy or click the Object Spy toolbar button to open the Object Spy dialog box and display the

Properties tab. Step 3: Object Spy dialog box appears. Step 4: Select the details you want to view for the object.
o

Click

Run-time

Object

Properties

or

Test

Object

Properties.
o

To view the object's available methods and syntax, click the Methods tab. Otherwise, the Properties tab is displayed by default, enabling you to view the object's properties and their values.

- 58 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 5: In the Object Spy dialog box, click the pointing hand . Quick Test is hidden. As you move the pointing hand over the test objects in your application, the test objects are highlighted, and you can view their test object properties or methods in the Object Spy dialog box. You can also view their parent objects in the object hierarchy tree area of the Object Spy dialog box. Step 6: Highlight or click the object whose properties or methods you want to view. The Object Spy displays the object hierarchy tree and the properties or methods of the object that is selected within the tree.

Step 7: If you want to copy an object property or value, or a method's syntax to the Clipboard, click the property, value, or method to highlight it. The value is displayed in the selected property/value or method syntax box (located above the Description box). Highlight the text in

- 59 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ the box and use CTRL + C to copy the text to the Clipboard or right-click the highlighted text and choose Copy from the menu.

21. Object Repository:


This Object Repository is also called as Local Repository. Because we can use the captured objects only for the particular test. We unable to share the captured objects to any other test. When you create an action in a test, Quick test creates a new local object repository that store objects used in the action. This local object repository is the default type of object repository. A local object repository stores objects associated with a specific action, so that only that action can access the stored objects. When you record a test, Quick test automatically saves the information about the objects that you record in the local object repository. Quick test creates separate local object repositories for each new action. Object Repository is used to Recognize each and every objects to QTP. To use Object Repository: Step 1: Open the Application that you want to Recognize. Step 2: Select Resource menu>Object Repository. Step 3: Object Repository-All Object Repository dialog box appears.

- 60 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 4: Select Object> Add Objects to Local to add the objects to Local Repository (or) click on Add Objects to Local icon in Tool Bar.

Step 5: After Clicking Add Objects to Local it shows Hand Symbol, by using this Symbol click on the application (Which you want) to Recognize to the QTP. Step 6: After Capturing Object Selection-Add to Repository dialog box appears, Click on OK. Step 7: Define Object Filter dialog box appears, select All Object types Radio Button to capture all the objects in the Application for Recognition, Click on OK. Step 8: Now in the Object Repository- All Object Repository dialog box captures all the objects for application.

Step 9: Close the Object Repository-All Object Repository dialog box. Step 10: Now just enter the script in the test.

- 61 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

22.

Object

Repository

Manager

&

Associate

Repository:
Object Repository Manager is also called as Shared Repository. By Using Object Repository Manager we are Capturing some objects and saving this captured objects but we are not recognizing anything to the QTP. Now we can share this captured action to any test. If you plan to use shared objects in a test, you can create a shared object repository before you create the test. A Shared object repository can be used for multiple tests. Multiple shared object repositories can store shared objects. You specify the shared object repositories that you want to use for an action in a test before you record a test. You can also create new shared object repositories and associate these repositories with an action in a test after you record the test. To create and manage shared object Repositories Step 1: Open the Application that you want to Capture. Step 2: Open the Object Repository Manager by Resources>Object Repository Manager. Step 3: Object Repository Manager Dialog box appears.

- 62 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Step 4: Select Object> Add Objects to add the objects to Repository Manager (or) click on Add Objects icon in Tool Bar.

Step 5: After Clicking Add Objects to Local it shows Hand Symbol, by using this Symbol click on the application (Which you want) to Capture the Objects. Step 6: After Capturing Object Selection-Add to Repository dialog box appears, Click on OK. Step 7: Define Object Filter dialog box appears, select All Object types Radio Button to capture all the objects in the Application for Recognition, Click on OK. Step 8: Now in the Object Repository Manager dialog box captures all the objects from the application.

- 63 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Step 9: Now Click on Save Button to save the Captured Objects in the Repository Manager. Step 10: Now just close the Object Repository Manager. Note: Now if you try to write the script in the test it will not accept your script because we used Object Repository Manager only for Capturing not for Recognition. Note: Now we want to recognize the saved Repository to write the Script. For Recognition purpose use Associate Repository. Note: You want to use Object Repository Manager compulsorily we want to Use Associate Repository for Recognition Purpose. Step 11: To Open Associate Repository Resources>Associate Repository. Step 12: Associate Repository dialog box appears.

- 64 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Step 12: Click on Add Repository Repository.

Button to open the saved

Step 13: Select the Action 1 in the Available Action Field and click on button to add the Action to Associate Actions, and then click on Ok to Recognize the Repository. Step 14: Now Enter the Script in QTP. Note:

- 65 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Use the Object Repository Manager to manage all shared object repositories at one central location. In the Object Repository Manager you can: Create a shared object Repository. Associate Object Repositories to actions. Add objects to a shared object repository. Save a shared object Repository. Modify an object in a shared object repository.

23. Recovery Scenario Manager:


Identifying Exceptions: Unexpected events during a test run disrupt a test or may give invalid test result. For example, during a test run, an application error may occur. This error does not permit the automated test to navigate to the feature, Screen, or Module that needs to be tested. These unexpected errors and events are called exception. An exception could occur in the AUT or an exception could occur because sources are external to the AUT. For Example, an exception occurs if notification messages, such as you have mail or Printer out of Paper, appear during a test run. Events that are expected to occur during a test run are not called exceptions. For Example, the message box that appears when you enter a bad password is an expected event. Similarly, the prompt to save changes or enter details in a mandatory field are expected events. You cannot classify these events as exceptions. Introduction to a Recovery Scenario: To successfully complete a test run, you need to identify the exceptions that can occur during a test run and take appropriate action to handle the exceptions.

- 66 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ You can create recovery scenarios in Quick Test Professional to handle exceptions that occur during a test run. A recovery scenario consists of the following components: Trigger: Specifies the exception that may occur during a run session. For Example, the test may be interrupted by an error pop-up window. Recovery: Instructs Quick Test how to handle the exception. For Example, you can instruct Quick Test to click a button on the error pop-up window to close the window. Post-Recovery: Instructs Quick Test how to proceed after the recovery operations are performed. For Example, after an exception is handled; you may want Quick Test to restart a test from the beginning.

After you create a recovery scenario, you can associate it with one or more tests. To create Recovery Scenario: Step 1: Enter invalid input in the application, and execute the Script. Now it shows the pop-up message. Step 2: From the Quick Test Professional menu bar, select Resources>Recovery Scenario Manager. The Recovery Scenario Manager Dialog box appears.

- 67 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Step 3: In the Scenario Section, click the New Scenario button to display Recovery Scenario Wizard. Step 4: Click Next. The Select Trigger Event appears. Note: In the first component of a Recovery Scenario, you identify the event type that can disrupt a test run. To select a trigger Event type: Popup Window: if a popup window appears in an open application. Object State: If a mismatch occurs between the expected and the actual state of an object in the test. Test Run Error: If a step in the test fails. Application Crash: If an open application fails.

Step 5: Select Popup Trigger Event, click Next. Note: After you select a trigger event type, you specify the conditions that can help Quick Test identify the correct event during a test run. Step 7: On the Specify Pop-up Window Conditions page, click the Pointing hand button, and click the Pop-up error message box that you want the recovery scenario to handle. - 68 Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 8: The Window Title and the Window Text Contains fields display the conditions to identify the Pop-up window. Step 9: Click Next. The Recovery Operation Page appears. Step 10: No need to enter anything now, click Next. Note: After you specify the trigger event type and the trigger event conditions in Recovery Scenario Wizard, you specify the recovery operation(s) required to handle the trigger event. To identify the recovery operation. Step 11: Select Keyboard or Mouse Operation, it performs a key press or a mouse click recovery operation. Step 12: Select Next to select a recovery operation, such as Click Button with Label. Step 13: Click on Hand Button to capture the buttons in the Pop-up error message. Step 14: Now it captures the Ok button, click on Next. Step 15: Click Next to Capture another button. Step 16: Next>Keyboard or Mouse Operation>Next>Click Buttons with Label>Click on Hand button. Step 17: Press Control Button to Deactivate the Capture and click on OK in the error pop-up message. Step 18: Now Remove the Control Button and Capture the Cancel Button in the application to close the Application. Step 19: Click on Next. Step 20: Remove the Add another Recovery Operation Checkbox to Stop adding Recovery Operation. Step 21: Click on Next. Note: After you specify the recovery operation, identify the operation that you want to perform when the recovery operation complete.

- 69 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 22: Select Proceed to next test iteration Radio button in Post Recovery Test Run Options to apply no of iterations to the recovery, Click on Next. Note: After you identify a trigger event and select the recovery and Post-Recovery operations for a recovery scenario, you use the Name and Description page to provide a name and Description for the recovery scenario. Step 23: In Scenario Name field enter the name for the Scenario you created and enter the Description in the Description field (Optional). Step 24: Click on Next. Step 25: The Completing The Recovery Scenario Wizard page displays the details of the recovery scenario in the Scenario Settings Section. Step 26: To associate the recovery Scenario with the current test, check the Add Scenario to Current Test Check box. Step 27: To save the recovery Scenario, Click Finish. The Recovery Scenario Manager Dialog box appears. Note: After you create a recovery scenario, save the recovery scenario to a file. Step 28: In Recovery Scenario Manager, click Save button to save the Scenario, and click Close to close the Recovery Scenario Manager. Step 29: To add an existing recovery scenario to a test. From the Quick Test Professional Menu bar select File>Settings. Step 30: In the Settings dialog box, click the Recovery tab. Step 31: Defaultly the Saved Recovery will be available, if it not Available, click the Add button. Step 32: Browse the Saved Recovery to the particular test. Click OK to apply the Scenario to the test. Step 33: Execute the Script to Analyze the Result.

- 70 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ 24. Merge Object Repositories: Two shared object repositories can be merged into a single object repository. This is done in the Object Repository Manager. When you merge two shared object repository, the primary object repository and the Secondary object repository, a Third object repository called Target object Repository gets created. To merge two object repositories:

Step 1: In the Object Repository Manager, select Tools>Object Repository Merge Tools. The New Merge dialog box appears.

- 71 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Step 2: In the New Merge dialog box, type or select the names of the object repositories that you want to merge. Step 3: Click OK. Step 4: The Statistics message box appears. The message box displays the details of the conflicts and the number of unique items merged from the two repositories. Step 5: Click Close. The Object Repository-Merge Tools window appears. It displays the objects in the target object repository. Step 6: Save the target object Repository. Step 7: Then recognize it to the QTP by using Associate Repository. Step 8: Enter the Script.

- 72 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

25. Virtual Objects:


Your application may contain objects that behave like standard objects but are not recognized by Quick Test. You can define these objects as virtual objects and map them to standard classes, such as a button or a check box. Quick Test emulates the user's action on the virtual object during the run session. In the test results, the virtual object is displayed as though it is a standard class object. For example, suppose you want to record a test on a Web page containing a bitmap that the user clicks. The bitmap contains several different hyperlink areas, and each area opens a different destination page. When you record a test, the Web site matches the coordinates of the click on the bitmap and opens the destination page. To enable Quick Test to click at the required coordinates during a run session, you can define a virtual object for an area of the bitmap, which includes those coordinates, and map it to the button class. When you run a test, Quick Test clicks the bitmap in the area defined as a virtual object so that the Web site opens the correct destination page. Quick test learns the information about the boundaries associated with the Virtual Object along with the Standard object type that the Virtual Object emulates. Quick test stores this information in Virtual Object Manager. When you record a test that uses a virtual object, quick test stores the virtual object in the object repository for the test. Quick test uses the information in the object repository to recognize the virtual object test playback.

- 73 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Quick test does not recognize virtual objects during analog recording or Low-Level Recording. You cannot use the Object Spy feature to Recognize Virtual Objects. To create a Virtual Object: Step 1: On the Quick test Professional menu bar, select Tools>Virtual Objects> New Virtual Object to open the Welcome to The Virtual Object Wizard page. Step 2: Click Next. The Map To a Standard Class page appears. From the Class list, select the class (Object) to which you want to map the Virtual object, and click Next. The Mark Virtual Object page appears. Step 3: Click Mark Object Button. The cross-hairs symbol appears. Use the cross-hairs symbol to mark the area for the virtual object. Ensure that the object areas for multiple Virtual objects do not overlap. Step 4: On the Mark Virtual Object page, click Next. The Object Configuration page appears. Step 5: In the Identify Object Using section, select the Parent Only option or the Entire Parent Hierarchy option, and click Next. Step 6: In the Save Virtual Object page that appears, specify a name for the Virtual object and collection in the Name and Collection Name fields, respectively. Step 7: Select the Yes option if you want to create more virtual objects. Otherwise, select No, and click Finish. Step 8: Now use Record option to generate the Script and see the Result.

- 74 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

26. Virtual Object Collection:

You store similar virtual objects in a named Virtual Object collection. For Example, you can create virtual objects for the various buttons in the Paint toolbar and store them in a named Virtual object collection called paint. You use Virtual Object Manager to view the information about Virtual object collections. To open Virtual Object Manager. Step 1: From the Quick Test Professional menu bar, select Tools>Virtual Objects>Virtual Object Manager.

- 75 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

27. Step Generator:


The step Generator enables you to add steps to a test by selecting from a range of context-sensitive options. Using the Step Generator dialog box, you can add steps that perform operations using the following criteria. Category: Specifies an object or functions that the step performs. The options available in the Category list are: Test Objects: Display contents of Object Repository. Utility Objects: Display predefined list of utility objects. Functions: Display all the functions including Build-in, Library and Local script functions. Operation: Specifies category selected. Arguments: Specifies a value set for an argument. The argument may be optional depending on the object and operation being used. Step Documentation: Display current Step. To display the Step Generator: Step 1: From the Quick Test Menu bar, Select Insert>Step Generator (or) Press F7. Step Generator dialog box appears. information about the available options based on the

27.1. Test Objects:

- 76 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Step 2: In Category field Select Test Objects. Step 3: In Object field click on Browse button. Step 3: Select Object for Step dialog box appears. Click on Hand Symbol at the Bottom left of the dialog box. Step 4: After clicking Hand Button, it shows Hand Symbol, click on the applications element which you want to Insert. Step 5: Object Selection dialog box appears, Click on Ok. Step 6: Now that captured value is added to the Step Generator, Enter the Value in the Argument field, click on OK. Step 7: Now script is inserted in the QTP. Like this just Insert Lot of Scripts.

- 77 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ 27.2. Utility Objects:

Step 8: Open the Step Generator Same like Step 1. Step 9: In the Category field Select Utility Object, it is used to insert the System utility Scripts. Step 10: In Object field select the Utility. E.g.: Systemutil Step 11: In Operation Field Defaultly it select after selecting values in the Object field. Step 12: Enter the values in the Argument field. E.g.: Path of the application. Step 13: Click OK to insert the Script. Step 14: Do the Same steps to Insert the remaining Scripts. 27.3. Functions:

- 78 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Step 15: Open the Step Generator Same like Step 1. Step 16: In the Category field Select Functions, it is used to insert the Functions. Step 10: In Library field select the Library. Eg: All. Step 11: In Operation Field select operation for the particular function. E.g.: Inbox to insert the Inbox Function. Step 12: Enter the values in the Argument field. Step 13: Click OK to insert the Script. Step 14: Do the Same steps to Insert the remaining Functions.

- 79 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

28. Function Definition Generator:


Quick Test provides a Function Definition Generator, which enables you to generate definitions for new user-defined functions and add header information to them. You can then register these functions to a test object, if needed. You fill in the required information and the Function Definition Generator creates the basic function definition for you. After you define the function definition, you can insert the definition in your function library and associate it with your test, or you can insert the definition directly in a test script in the Expert View. Finally, you complete the function by adding its content (code). To open Function Definition Generator: Step 1: Make sure that the function library or test in which you want to insert the function definition is the active document. (You can click the document's tab to bring it into focus.) This is because the Function Definition Generator inserts the function in the currently active document after you finish defining it. Step 2: we need to open new Function Library Page to insert the Function Syntax and to execute the Function. Step 3: Choose Insert > Function Definition Generator or click the Function Definition Generator button Generator opens. . The Function Definition

- 80 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Step 4: In the Name box, enter a name for the new function. The name should clearly indicate what the operation does so that it can be easily selected from the Step Generator Step 5: From the Type list, choose Function or Sub, according to whether you want to define a function or a subroutine. Step 6: From the Scope list, choose the scope of the functioneither Public (to enable the function to be called by any test, or component whose application area is associated with this function library), or Private (to enable the function to be called only from elsewhere in the

- 81 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ same function library). By default, the scope is set to Public. (Only public functions can be registered to a test object.) Note: If you create a user-defined function manually and do not define the scope as Public or Private, it will be treated as a public function, by default. Step 7: In Preview Screen we can able to see the Functions. Step 8: Click on OK to insert the Syntax.

29. Synchronization Point:


Synchronization is used to instruct Quick Test to wait for the application process to complete before proceeding to the next step in the test. Quick Test Professional has a default global synchronization timeout. This timeout indicates that during text execution, Quicktest waits for an object to achieve a specific status or for the timeout of the object synchronization to occur before moving on to the next step. If a process takes considerably longer to complete, the global synchronization timeout may not sufficient for the step to complete and the next step might fail. To give these longer steps in a test enough time to complete, add a synchronization point. Quick test Professional displays an error message if it proceeds to the next step before completing the previous steps. 29.1. Add a Synchronization Point While Recording: A Synchronization Point must be inserted while recording.

- 82 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ To add a Synchronization Point: Step 1: Click on Record Button. Step 2: From the Quick Test Professional menu bar, select

Insert>Synchronization Point. The cursor changes to a pointing Hand. Step 3: Use the pointing hand cursor to select the object in the Flight Reservation window for which you want to add the Synchronization point. The Object Selection-Synchronization Point dialog box appears. Step 4: Click OK. The Add Synchronization Point dialog box appears. Step 5: From the Property Name list, select the property name and in the Property Value field, type the property value for which Quick Test should wait before moving to the next step. Step 6: in the Timeout field, type the synchronization point timeout in milliseconds. This time will be added to the global timeout. Click Ok. Note: we can insert the Synchronization point manually by wait (time). E.g.: wait (5).

30. Parameterization:
We can parameterize the value by two methods 1. Parameterize through Data Driver Wizard. 2. Parameterize through the Keyword View.

- 83 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ 30.1. Parameterize Through Data Driver Wizard: The Data Driver enables you to quickly parameterize several (or all) property values for test objects, checkpoints, and/or method arguments containing the same constant value within a given action. (Or) Data Driver Wizard is used to convert the Templates and its Input from the Script to the Data table (Designed Time Data Table). To parameterize a value using the Data Driver: Step 1: Generate the Script by Using the Record Button for Particular application. Step 2: Choose Tools > Data Driver. Quick Test scans the test for constants before the Data Driver opens (this may take a few moments).

- 84 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Note: If the action being scanned contains a large number of lines and constant values, Quick Test warns you that loading the constants may take some time. You can choose whether to wait for the constants to load, or to open the Data Driver wizard quickly without constants. The Data Driver displays the Constants list for the action. For each constant value, it displays the number of times the constant value appears in the action. Step 3: If you want to parameterize a value that is not currently displayed in the list (such as an object property value), click Add Value. The Add Value dialog box opens.

Enter a constant value in the dialog box and click Add. The constant is added to the list. Note: You can add only constant values that currently exist in the test action. Step 4: Select the value you want to parameterize from the Constants list and click Parameterize. The Data Driver Wizard opens.

- 85 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Step 5: Select the type of parameterization you want to perform: Step-by-step parameterization. Enables you to view the current values of each step containing the selected value. For each step, you can choose whether or not to parameterize the value and if so, which parameterization options you want to use. Parameterize all. Enables you to parameterize all occurrences of the selected value throughout the action. You set your parameterization preferences one time and the same options are applied to all occurrences of the value. Step 6: If you selected Step-by-step parameterization, click Next. The Parameterize the Selected Step screen opens.

- 86 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ If you selected Parameterize all, the Parameter option is enabled in the Configure value area. Select your parameterization preferences the same way that you would for an individual step. Step 7: Data Driver Wizard-Parameterize the Selected Step dialog box appears. Step 8: Select Parameter Radio button and click on browse button (Parameter option). Step 9: Parameter Option dialog box appears, in the Name field enter the Template Name. Step 10: In Location in the Data Table select the Global Sheet or Current action sheet (local) to insert the data, and click on Ok. Step 11: Click Next, and Click on Finish to insert the data. Step 12: Do the same step to insert the new datas. Step 13: Through the data table (Designed Time Data table) apply the multiple no of Inputs. Step 14: Execute the script to check the Result. 30.2. Parameterizing through the Keyword View. When you test your applications, you may want to check how the application performs the same operations with multiple sets of data. For example, suppose you want to check how your Web site responds to ten separate sets of data. You could record ten separate tests, each with its own set of data. Alternatively, you can create Data Table parameters so that

- 87 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ your test runs ten times, each time using a different set of data. this way of setting parameters is called parameterization. Step 1: Enter the Script for the particular application. Step 2: open the keyword view, select the Input (that you want to parameterize) in the value field. Step 3: Now it shows parameter option button, just click on it to open the Value Configuration options. Step 4: In the Value Configuration Options just select the Parameter Radio Button. Step 5: In Value Configuration Option dialog box select Name field and modify the name which you want enter as a template in the Data Table. Step 6: In the Location in Data Table select the Data Table you want to insert (Global Sheet and Current Action Sheet (local)). Step 7: Click on Ok to insert the selected value in the Selected Data Table. Step 8: Do the same step to apply for more no of Templates. Step 9: Enter the Multiple number of inputs through the data table for the Particular Script.

31. Object Identification:

- 88 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ You can view and modify the object class properties in the Object Identification dialog box. Use the Object Identification dialog box to: View the mandatory and assistive properties of an object class. Modify the mandatory and assistive properties of an object class. Select the ordinal identifier for an object class. Create a user-Defined object class. Reset the properties of an object class.

Quick test has a predefined set of properties that it learns for each test object. You use the object Identification dialog box to view and modify the predefined set of properties of all object classes. 31.1. To open the Object Identification dialog box: Step 1: From the Quick test professional menu bar, select Tools>Object Identification. Step 2: Object Identification dialog box appears. In the Object Identification dialog box, from the Test Object Classes list, select the object class whose properties you want to view. 31.2. Identifying Types of Object Class Properties: An application uses multiple instances of an object class. For Example, the flight Reservation application uses the Fly From and Fly To Combo box, which are objects of the WinComboBox object class. Quick test Professional assigns a set of mandatory and assistive properties to the Wincombobox object class to help the class recognize

- 89 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ the combo box. These properties help create a unique description of each object in an object class. Mandatory properties are the properties that Quick Test always recognizes for a test object class. Quick Test recognizes assistice properties if the mandatory properties are not sufficient to create description for an object in an object class. In the flight Reservation application, the Attached Text property uniquely identifies the object of the Win Combo box object class. Therefore, Quick Test assigns the Attached Text property as a mandatory property to the Win Combo box object class. However, there may be instances of applications where the attached text may be the same for different combo box. In such case, Quick test assigns additional mandatory and assistive properties to create a unique description of an object. Step 3: In the Object Identification dialog box, below the Mandatory Properties list, click Add/Remove. Step 4: in the Add/Remove Properties dialog box, clear the properties that you do not require and check the properties that you require. Step 5: If the available property are not sufficient, click New to create a new property. Step 6: In the Name Property dialog box, in the New Property Name field, type a name for the property, and click Ok. Step 7: Click on Ok to close the Add/Remove Properties dialog box and apply the new properties to the object class.

- 90 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Note: You can modify the assistive properties of an object class in a similar manner. Step 8: Quick test uses an Ordinal Identifier to identify an object if the mandatory and assistive properties are insufficient to identify the object. You select the Ordinal Identifier as Location Or Index from the Ordinal Identifier list in the Object Identification dialog box. BY default, the location of an object is used as an ordinal identifier to identify an object. Note: when you run a test, Quick Test searches for an object based on the description it learned for the object. If Quick test cannot find any object that matches the description, or if it finds multiple objects that match, Quick Test uses the Smart Identification feature to identify the object. 31.3. To modify the Smart Identification Properties: Step 9: In the Object Identification dialog box, click Configure. The Smart Identification Properties-Browser dialog box appears. The Smart Identification Properties-Browser dialog box displays the Base Filter Properties and Optional Filter Properties lists for an object class. Step 10: Click Add/Remove to modify a property. Step 11: Click on Ok in the Object Identification dialog box. Step 12: After you modify the Smart Identification properties and update a test, you run the test and view the test result.

32. Breakpoint:

- 91 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Breakpoint instruct Quick test to pause a run session at a predetermined place in a test or function library and quick test pauses the run (a breakpoint) before executing the step. You can Examine the effects of the run up to the breakpoint. Make any necessary changes. Continue running the test or function library from the breakpoint. Suspend a run session and inspect the state of your application. Make a point which to begin stepping through a test or function library using the step commands. You can set breakpoints. You can temporarily enable and disable breakpoints. After you finish you breakpoints, you can remove breakpoints from your test or library function. Breakpoints are applicable only to the current Quick test session and are not saved with your test or function library. 32.1. Insert Breakpoint/Remove Breakpoint: You can easily insert and remove breakpoints in the Keyword View. When you place a breakpoint in a step in the Keyword View, it is also displayed in the Expert View, and vice versa. You insert a breakpoint in the Keyword View by clicking in the left margin at the point where you want to insert the breakpoint, or by selecting a step and pressing F9, or choosing

- 92 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 1: Generate the Script for the Application. Step 2: Debug > Insert/Remove Breakpoint. Step 3: Red breakpoint icon is displayed. Step 4: You can remove a breakpoint by clicking the breakpoint icon, or by selecting a step and pressing F9 or choosing. Debug > Insert/Remove Breakpoint. Step 5: Execute the Script to see the Result.

33. Data Driven Testing:


Data table Method. Environment Variable. Random Numbers.

33.1. Environmental Variable:


When we want to use the same variable in different actions then we can use envionment variables we can load the set of environment variables from a XML file directly 33.1.1. Types of Environmental Variable: User-Defined Internal. User-Defined External. Built-in.

a. Build-In Variables: Build-in variables are the name suggests are predefined by QTP. Examples of such variables are OS, OS Version, ActionName which are - 93 Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ for Operating System, Operating System Version and Name of the action which is currently running, respectively. Step 1: Open a new test. Step 2: Go to the File (Menu)>Settings, a Test settings window opens. Step 3: Go to the Environment Tab. By default Built-in variable type is selected and you will be able to see Name and Description of the Build-in variables below variable type Dropdown box. Step 4: You can click on any of those variables to see their current value. Step 5: Now close the Test Settings window and go to test. Step 6: In the Expert view type: a=Environment (actionname) & is running on & environment (OS) msgbox (a) Step 7: Run the Test. b. User Defined Internal: User Defined Internal variables are the variables defined by you ( the user) within the test and which are saved within the test and also accessible from within the test. Step 1: Open a new test. Step 2: Go to File menu> Settings, a Test Settings window opens.

- 94 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 3: Go the Environment Tab. From Variable Type dropdown select User- Defined. Step 4: Click on the + which is on the right of Variable Type dropdown. Step 5:Add New Environment Parameter window opens up, type the Name and Value of the Variable e.g. in Name type Agentname and in Value type arcus (without quotes, I have added quotes just for clarity) and click on OK. It will add the variable with its type as internal. Step 6: Click Apply and OK to come out of the Test Settings window. Step 7: Open the Test in QTP, and Enter the script as E.g.: lv_agentname=Environment.Value ("agentname") lv_password=Environment.Value ("password") systemutil.Run"C:\Program Files\Mercury Interactive\QuickTest Professional\samples\flight\app\flight4a.exe" Dialog ("Login").WinEdit ("Agent Name :") .Set lv_agentname Dialog ("Login").WinEdit ("Password :") .Set lv_password Dialog ("Login").WinButton ("Cancel").Click Step 8: Execute the Script and analyse the Result. c. User Defined External: User Defined External Avriables are the variables which are defined in the file outside of test. These act as read only for the test. You can

- 95 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ create as many files for environment variables as you want and choose them for your test. Step 1: Open a new NotePad . Step 2: Enter the Value as <Environment> <Variable> <Name>Agentname</Name> <Value>arcus</Value> </Variable> </Environment> And save this notepad as .xml file. Step 3: Open the New Test in the QTP. Step 4: Go to File menu> Settings, a Test Settings window opens. Step 5: Go the Environment Tab. From Variable Type dropdown select User- Defined. Step 6: Click on load Variables and values from external file check box and import the external xml file that we created above. As soon as it is imported the complete path of that file will be shown in the File text box and the variables in it will show under Name, Value and Type heading (in our case it will show Agentname under Name, arcus under Value, and External under Type). Step 7: Click on Apply and Ok to come out of it.

- 96 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 8: Open the test in the QTP, and type Script as Environment.LoadFromFileEnter the path of the Xml file you saved lv_agentname=Environment.Value ("agentname") lv_password=Environment.Value ("password") systemutil.Run"C:\Program Files\Mercury Professional\samples\flight\app\flight4a.exe" Interactive\QuickTest

dialog("Login").WinEdit("Agent Name:").Set lv_agentname dialog("Login").WinEdit("Password:").Set lv_password dialog("Login").WinButton("Cancel").Click Step 9: Execute the Script and Analyze the Result.

33.2. Data Table Method:


By using the Data Table method we are Checking the Functionality for the application with Multiple number of inputs. There are two types of Data Table Testing. Internal Data Table Testing. External Data Table Testing.

a. Internal Data Table Testing: It is nothing but just applying the multiple number of inputs through the Defined Time Data Table in the Qtp. Step 1: Enter all the Scripts for the Application in the Expert View. Step 2: Go to the Keyword View and Parameterize the Templates and Its Values to the Defined Time Datatable.

- 97 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 3: Through the Defined Time Data Table just apply the Multiple No of Inputs. Step 4: Execute the Script to analyse the Result. b. External Data Table Testing: It is nothing but just applying the multiple number of inputs through the External File i.e. Excel Sheet. Step 1: Open the Excel sheet, and enter the Templates and its Value that you want to check the functionality of the application. e.g. agentname and its value, and Password and its value. Step 2: Save the Excel Sheet as .xls. Step 3: Open the Test in the QTP. Step 4: Enter the Script as E.g.: datatable.AddSheet"Arcus" datatable.ImportSheet"path","Name of the Sheet in Excel","Arcus" rc=datatable.GetSheet("Arcus").getrowcount msgbox rc For i=1 to rc datatable.SetCurrentRow (i) dialog("Login").WinEdit("AgentName:").Setdatatable.Value("agentname","roles ") dialog("Login").WinEdit("Password:").Setdatatable.Value("password","roles") Dialog (Login).WinButton (Cancel).click

- 98 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Next Step 5: Execute the Script two analyze the Result.

34. Database Connections:


We can connect to database & update data & Read data from database using Below Classes. 1. Adobd.Connection: we can use this class to establish the connection to the database. 2. Adodb.Command: we can use this class to execute any SQL statement like Insert, Update and delete Commands. 3. Adobd.Recordset: we can use this class to select the record from database. By using Database connection we are applying the Multiple no of inputs to the Script. We can apply the input by 3 ways. MS-Access. SQL Server. Oracle.

34.1. MS-Access:
By using MS-Access we are applying the multiple no of Inputs to check the functionality.

- 99 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 1: Open the MS-Access. Step 2: Create the Database by clicking on the New Button option in the Menu Bar. Step 3: Select Blank Database at Right side of the MS-Access. Step 4: File New Database dialog box opens, in the File Name field just enter the Database Name and click on Create. Step 5: Database (Access 2000 file format ) dialog box opens. Step 6: In that dialog box Double click on Create table by Entering Data to create a new data table in the database. Step 7: Now Data Table opens, In the Field Row just Enter the Template name e.g. AgentName and Password. Step 8: Then Enter the multiple number of inputs in the Table. Step 9: Save the Table, and close the Database. Step 10: Open the Test in the QTP. Step 11: Enter the script as E.g.: Set con=createobject ("adodb.connection") Set rs=createobject ("adodb.recordset") con.open "provider=microsoft.jet.oledb.4.0; data source="" rs.open"select * from orders", con While rs.EOF<>true Dialog ("Login").WinEdit ("Agent Name :") .Set rs ("agent name")

- 100 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Dialog ("Login").WinEdit ("Password :") .Set rs ("password") rs.movenext Wend

Step 12: Execute the Script to Analyse the Result.

34.2. SQL Server:


Through the SQL Server we are applying the multiple no of inputs for the application. Step 1: Open the SQL Server. Step 2: Create the Database and Create the Data table. Step 3: Enter all the Templates and Inputs in the Data table. Step 4: Open the Test in QTP. Step 5: Enter the Script as E.g.: Set con=createobject ("adodb.connection") Set rs=createobject ("adodb.recordset") con.open"provider=sqloledb.1; server= ; uid= rs.open"select * from orders", con While rs.EOF<>true Dialog ("Login").WinEdit ("Agent Name :") .Set rs ("agent name") Dialog ("Login").WinEdit ("Password :") .Set rs ("password") rs.movenext ; pwd= ; database= "

- 101 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Wend

Step 6: Execute the Script to analyse the Result.

34.3. Oracle:
Through the Oracle applying the multiple no of inputs for the application. Step 1: Open the Oracle Step 2: Create the Database and Create the Data table. Step 3: Enter all the Templates and Inputs in the Data table. Step 4: Open the Test in QTP. Step 5: Enter the Script as E.g.: Set con=createobject ("adodb.connection") Set rs=createobject ("adodb.recordset") con.open"provider=oraoledb.1; server= ; uid= rs.open"select * from orders", con While rs.EOF<>true Dialog ("Login").WinEdit ("Agent Name :") .Set rs ("agent name") Dialog ("Login").WinEdit ("Password :") .Set rs ("password") rs.movenext wend ; pwd= ; database= "

- 102 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 6: Execute the Script to analyse the Result.

35. Flat Files:


It is another method to apply the multiple no of inputs to the Script through the Notepad. Step 1: Open the Notepad, and Enter all the Templates and Inputs for the Templates that you want to apply the input for Script. Step 2: Save the notepad as .txt. Step 3: Open the Test in Qtp. Step 4: Enter the Script as E.g.: Set fso=createobject ("scripting.filesystemobject") Set f=fso.opentextfile (" ", 1) f.skipline While f.atendofline<>true s=f.readline arr=split (s," ") Dialog ("Login").WinEdit ("Agent Name :") .Set arr (0) Dialog ("Login").WinEdit ("Password :") .Set arr (1) Wend Step 5: Execute the Script to analyze the Result.

36. Descriptive Programming:

- 103 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ It is nothing but a technique using which operations can be performed on the AUT object. Which are not present in the Object Repository. There are two Types of Descriptive Programming. 1. Static Descriptive Programming. 2. Dynamic Descriptive Programming. 36.1. Static Descriptive Programming: We provide the set of properties and values, which describes the object, directly. Step 1: Open the Test in the Qtp. Step 2: Open the application that you want to write the Script. Step 3: Identify the properties for the applications option by using Object Spy. Step 4: Enter the script as, this below Example uses Descriptive Programming to open Flight Application and does not use object Repository at all. So one of the other advantage is you can copy this script and run this from any other machine (other that on which it was created) and it is supposed to work fine. E.g: Dialog(text:=Login).winedit(attached text:=Agent Name:).set Arcus Dialog(text:=Login).winedit(attached text:=Password:).set mercury Dialog(text:=Login).winbutton(text:=OK).click Step 5: Execute the script to analyse the Result. 36.2. Dynamic Descriptive Programming:

- 104 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 1: Open the test in QTP. Step 2: open the application that you want to write the Script. Step 3: Identify the properties for the applications option by using Object Spy. Step 4: Enter the script as, This below Example uses Descriptive Programming to open Flight Application and does not use object Repository at all. So one of the other advantage is you can copy this script and run this from any other machine (other that on which it was created) and it is supposed to work fine. Step 5: Enter the Script as Set dianame=Description. create Dianame(text).value=Login Set agname=Description.create Agname(attached text).value=Agent Name: Set pwd=Description.create Pwd(attached text).value=Password: Set but=Description. create But(text).value=OK Dialog(dianame).winedit(agname).setArcus Dialog(dianame).winedit(pwd).setmercury Dialog(dianame).winbutton(but).click Step 6: Execute the Script and analyze the Result.

37. Keyword Driven Testing:


Step 1: Open the Excel sheet and modify the Sheet 1 as Module, Sheet 2 as Test Case and Sheet 3 as Test Step.

- 105 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

Step 2: In templates.

Module sheet

enter

the

Template

as

Moduleid,

Modulename and Moduleexecution and enter all the values in the

Step 3: In the Test Case sheet enter the Template as Testcaseid, Testcasedescription, Testcaseexecution, and Moduleid and enter all the values in the templates. Step 4: In Test Step sheet enter the Templates as Teststepid, Functionname, Keyword, and Testcaseid and enter value in all the Templates. Step 5: Save the Excel sheet as .xls. Step 6: Open the Test in the Qtp. Step 7: Enter the Script as E.g: Nextdatatable.AddSheet"module1" datatable.AddSheet"testcase1" datatable.AddSheet"teststep1" datatable.ImportSheet"C:\Documents and infotech\Desktop\key.xls","module","module1" datatable.ImportSheet"C:\Documents and infotech\Desktop\key.xls","testcase","testcase1" datatable.ImportSheet"C:\Documents and infotech\Desktop\key.xls","teststep","teststep1" mcount=DataTable.GetSheet("module1").getrowcount For i=1 to mcount DataTable.SetCurrentRow(i) mexec=DataTable.Value("moduleexecution","module1") If mexec="Y" Then modid=DataTable.Value("moduleid","module1")

Settings\arcus Settings\arcus Settings\arcus

- 106 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ MsgBox modid tccount=DataTable.GetSheet("testcase1").getrowcount For j=1 to tccount DataTable.SetCurrentRow(j) tcexec=DataTable.Value("testcaseexecution","testcase1") modid1=DataTable.Value("moduleid","testcase1") If modid1=modid and tcexec="Y" Then tcid=DataTable.Value("testcaseid","testcas MsgBox tcid tscount=DataTable.GetSheet("teststep1").getrowcount For k=1 to tscount DataTable.SetCurrentRow(k) tcid1=DataTable.Value("testcaseid","teststep1") If tcid1=tcid then keyword=DataTable.Value("keyword","teststep1") MsgBox keyword Select Case keyword Case "la" Call la Case "lo" Call lo Case "clo" Call clo Case "la1" Call la1 Case "lo1" Call lo1 Case "fr" Call fr Case "capp" Call capp End Select End if Next End If Next End If Step 8: Create a New Function Library Page by using

File>New>Function Library. Step 9: Shortkut Key to open Library page is Shift+Alt+N. Step 10: In the Library page Enter the Function Syntax and its Script like this.

- 107 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________

E.g: Function la SystemUtil.Run "C:\Program Files\Mercury Professional\samples\flight\app\flight4a.exe" End Function Interactive\QuickTest

Function lo Dialog("Login").WinEdit("Agent Name:").Set "sdfgsdfg" Dialog("Login").WinEdit("Password:").SetSecure "4ae135406e68f334ebd94cbccf67f62f249df683" End Function Function clo Dialog("Login").WinButton("Cancel").Click End Function Function la1 SystemUtil.Run "C:\Program Files\Mercury Professional\samples\flight\app\flight4a.exe" End Function Function lo1 Dialog("Login").WinEdit("Agent Name:").Set "sdfgsdfg" Dialog("Login").WinEdit("Password:").SetSecure "4ae135406e68f334ebd94cbccf67f62f249df683" Dialog("Login").WinButton("OK").Click End Function Function fr Window("Flight Reservation").ActiveX("MaskEdBox").Type "111111" Window("Flight Reservation").WinComboBox("Fly From:").Select "Frankfurt" Window("Flight Reservation").WinComboBox("Fly To:").Select "Paris" Window("Flight Reservation").WinButton("FLIGHT").Click Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click Window("Flight Reservation").WinEdit("Name:").Set "fsdgsdfgs" Window("Flight Reservation").WinButton("Insert Order").Click End Function Function capp Window("Flight Reservation").Close End Function Step 11: Save the Function Library Page. Interactive\QuickTest

- 108 -

Arcus Infotech (P) Ltd

Software Testing Automation (QTP) ________________________________________________________________________ Step 12: Now we want to link the Function Library Page with the Test Page in the Qtp by File>Settings>Resources. Step 13: Test Settings dialog box appears. Click on + symbol to browse the Saved Library file. Step 14: After the browsing the library file click on Ok. Step 15: Execute the Script to analyse the Result.

- 109 -

Arcus Infotech (P) Ltd

Potrebbero piacerti anche