Skip to main content

Excel Automation and a palatable QTP Suite

 

Excel automation and VBScript can be used to create a test suite that can control the run sequence of QTP scripts and present a Summary report of the automation run cycle.

Its simple enough to double-click an icon and the VBScript program will create an excel sheet, populated with all the scripts from a Test folder. Here’s the folder structure:

image

Click here to get the files.

 

The CreateSuite.vbs program creates an excel sheet ..

image

.. and populates it with all the QTP scripts from the Tests folder (folder hierarchy within the Tests folder does not matter, a valid script folder will be fetched).

image

Here’s how the excel sheet looks after running the CreateSuite program:

image

This Test Suite has been created in the TestSuite folder, as the Suite.xls file:

image

Once the list of tests is available, one can choose to configure a subset of the listed tests to be run, like in the case below, we turn off the fourth test:

image

Now that the list of tests to be run is ready, we can double-click the SuiteRunner.vbs program to get the automation run started:

image

Some features of the Runner:

  1. The Suite Runner will read and run the scripts row-by-row.
  2. All scripts that are marked as Y in the Run ? column and that have a Not Run or a Failed result will be run.
  3. The full Suite can be iterated to run multiple times, for failed tests to get a chance to run in case some unexpected network state had prevented the earlier run. The last attempted iteration number is noted in the column Suite Cycle Itr.
  4. The Start and End times of each test are noted in the relevant columns.
  5. The Test Run Result is noted and highlighted with appropriate color in the Result column.

image

This excel sheet can now be used for further analysis of failures and reporting the same to the Stakeholders!

Comments

Popular posts from this blog

Experimenting with Visio and VBScript

This diagram is created:               using this code:                                                                         Copy the code: Option Explicit Dim strVSDPath, filesys Dim vsoApplication, vsoDocument, vsoPages, vsoPage Dim vsoMaster1, vsoMaster2, vsoStencil Dim vsoShape1, vsoShape2, vsoConnector1 Dim itr Const visAutoConnectDirDown = 2     'Connect down. Const visAutoConnectDirLeft = 3     'Connect to the left. Const visAutoConnectDirNone = 0     'Connect without relocating the shapes. Const visAutoConnectDirRight = 4     'Connect to the right. Const visAutoConnectDirUp = 1         'Connect up. ' Visio file to be created. strVSDPath = "D:\Workspace_Visio\TestRunFlow.vsd" 'delete any previously existing Suite file Set filesys = CreateObject("Scripting.FileSystemObject") If filesys.FileExists(strVSDPath) Then     filesys.DeleteFile strVSDPath End If Set filesys = Nothing &#

QTP – search sub-folders for existence of QTP scripts

  Suppose we want to report on all subfolders in a specific root folder that contain script files. Consider the example folder structure here – ODBC_MYSQL, ODBC_SQLEXPRESS and Test1 are the folders that have QTP scripts: Here’s a VBScript program that takes the root (start) folder as input, and iterates all subfolders recursively to report on the ones that are actual QTP script folders: Note: This program can be run directly as a VBScript program, or from within a QTP script by toggling the comment between lines 17 and 18. (p.s.: if Print statement does not work on specific version of QTP, use the Msgbox statement. For real world test automation projects, do not use either – to avoid human intervention!) On running the program, Folders across various levels (Level 2, 3) get reported!