Skip to main content

General Standards to be followed in Test scripts

'General Standards to be followed in Test scripts

    Indent the code to make it readable and understandable for others.
    Avoid hard coding system specific values like folder locations, instead set it relatively with respect to the Main/Startup script.
    Use synchronization functions instead of wait () function.
    Use GUI checkpoints for all static links, buttons and edit fields in every page (optional)
    Use parameterization instead of using hard coded data to populate the AUT.
    All references returned by the AUT must be written to the data table and verified later. These references must be written to the test report as well.
    All automation steps should be properly commented.
    All Logic should be commented and explained.
    The Global data sheet should not be used for importing any test data.
    The Global sheet should be used only when there are any parameters to be passed  in between   actions or 

    when certain data has to be maintained through out the test.
    Use the local sheet to import any test data.
    All actions except the main calling action are to be reusable action.
    Declare all variables used in the action in the start of the action itself. While using condition statements to control flow, indent the line, for easy readability.

Test Script Format

 The test scripts are developed using Quick Test Pro tool.
 The initial action of each subgroup starts the XYZ application and executes the test conditions.
  Each script executes the test conditions.
  The expected result is verified with the actual outcome whenever required.  

Given below is a sample test script format to be kept in the start of each action

‘******************************************************************************************************************‘
Script Name                                       :    ABC_TC01‘
Author                                               :    Jay   
‘Created On                                        :   
‘Referred Test Case Number                :   
XYZ_TC_01‘Target Application               :  
XYZ Application‘Purpose / Description    :    To validate the XYZ application
ABC functionality‘Data Sheet Name         :       
Global Sheet‘TSR Path                         :  
‘Revision Date                                      :       
NIL‘Revised By                                      :      
NIL‘Changes                                         :        NIL
 ‘*************************************************************************************************************

Option Explicit ‘This will FORCE the user to declare the variables
Note: XYZ – Application name
ABC – Module name
TC – Test Case   


Step Results

Pass Step Result: Reporter.ReportEvent 0,”Step-1”, “Message: Logged in Successfully”                                      

                                    Or

Reporter.ReportEvent micPass,”Step-1”, “Message: Logged in Successfully”  Fail Step Result: Reporter.ReportEvent 1,”Step-ER-1”, “Error Message: Log in Failed”      
                               
                                    Or

Reporter.ReportEvent micFail,”Step-ER-1”, “Error Message: Log in Failed”  



Source: Mercury Forum’s KB articles

Comments

Popular posts from this blog

Convert JSON to XML using QTP/UFT/VBScript

Sample Code : Dim strPage,strJSON,objIE strPage = "C:\Jay\JLoader.html" Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True objIE.Navigate2 strPage While objIE.Busy : Wend strJSON = "{""FirstName"":""Jay"", ""LastName"":""Krishna""}" Set objWin = objIE.document.parentWindow objWin.execScript "var jsonStr2XML = function(strJSON) { return json2xml(JSON.parse(strJSON));};" Msgbox  oWin.jsonStr2XML(strJSON) objIE.Quit In Detail: Converting The most popular data interchange format JSON(JavaScript Object Notation) to XML using QTP/UFT. Parsing JSON in UFT could be a challenge so we will use JavaScript in UFT to make it perfect. SO We need :              Java Script API  - To Convert JSON to XML                         JavaScript Files :                         http://goessner.net/download/prj/jsonxml/j

Read Outlook mail attachment and Body using Vb Script or QTP

Set olApp = CreateObject("Outlook.Application") Set olns = olApp.GetNameSpace("MAPI") Set ObjFolder = olns.GetDefaultFolder(6) j = 0 For each item1 in ObjFolder.Items        iattachCnt = item1.Attachments.Count     Print "Attachments Count: " & iattachCnt     For i = 1 to iattachCnt         Print "FileName :    " & item1.Attachments(i).FileName         Print "Display Name:   " & item1.Attachments(i).DisplayName         Print "Size: " & item1.Attachments(i).Size     Next     Print " Body : " & item1.body     Print "--------------------------------------Mail Num - " & j & " -----------------------------------------------"     j = j+1    Next

Excel Sorting By Rows and Columns

Excel Sorting By Row: Const xlAscending = 1 Const xlNo = 2 Const xlSortRows = 2 Set objExcel = CreateObject(“Excel.Application”) objExcel.Visible = True Set objWorkbook = objExcel.Workbooks.Open(“C:\Jay\Docs1.xls”) Set objWorksheet = objWorkbook.Worksheets(1) objWorksheet.Cells(1,1).activate Set objRange = objExcel.ActiveCell.EntireRow objRange.Sort objRange, xlAscending, , , , , , xlNo, , , xlSortRows set objExcel=nothing Excel Sorting By Column : Const xlAscending = 1′represents the sorting type 1 for Ascending 2 for Desc Const xlYes = 1 Set objExcel = CreateObject(“Excel.Application”)’Create the excel object objExcel.Visible = True’Make excel visible Set objWorkbook = _ objExcel.Workbooks.Open(“C:\Jay\Docs1.xls”)’Open the document Set objWorksheet = objWorkbook.Worksheets(1)’select the sheet based on the index .. 1,2 ,3 … Set objRange = objWorksheet.UsedRange’which select the range of the cells has some data other than blank Set objRange2 = objExcel.Range

How to Read or Select Context Menu or Right Click Menu using QTP.

Select The Item in Right Click Menu or Context Menu: Window("sampleWindow").WinMenu("MenuObjType:=1).Select"File;New" Here MenuObjtype can be 1 r 2 r 3 .......n Check wether the Item is Exist or Not: If Window("sampleWindow").WinMenu("MenuObjType:=1).GetItemProperty("1","Exist") Then   Msgbox"Exist" Else  Msgbox"Does Not Exist" End If                                         Or If Window("sampleWindow").WinMenu("MenuObjType:=1).GetItemProperty("File","Exist") Then   Msgbox"Exist" Else  Msgbox"Does Not Exist" End If Get the Items in Context Menu: For i = 1 to 10 Print  Window("sampleWindow").WinMenu("MenuObjType:=" & i).GetItemProperty("1","Label") Then Next

How to Download a file using VbScript

Following is the code to download a file using Vbscript, without using QTP This code uses the HTMLDom and URLDownloadToFile method from urlmon API. Since VBScript does support calling Native API methods directly, here I am using  Excel macro to declare a function for the urlmon API and running the macro by Excel API from VBscript Step1: Create a new excel and open the visual basic editor, Insert Module and paste the following code the Module, save the excel file Private Declare Function URLDownloadToFile Lib “urlmon” Alias _                                            “URLDownloadToFileA” ( _                                            ByVal pCaller As Long, ByVal szURL As String, _                                            ByVal szFileName As String, _                                            ByVal dwReserved As Long, _                                            ByVal lpfnCB As Long) As Long Sub FileSave(strUrl, Des)     r = URLDownloadToFile(0, strUrl, Des, 0, a)