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

PDF Automation in QTP

                                                                            The most challenging issue with PDFs is that it could be of any kind, not just a tabular data; it could have plain text, images or even forms to fill up. So this makes a tester’s life a bit difficult, never mind, we will definitely find an easy of do it… Although there are already some better approaches we have to deal with PDF documents but I found many of us are facing so many difficulties using this. There are lots of queries coming at QTP forums asking for an easy way of doing it with PDFs. keeping those in my mind I started c...

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 :  ...

Download Test Resource From QC Using QTP

'########################################################################### '* Function Name: QCGetResource '* Designer: Jay '* Date 09-May-2012 '* This script will Download QC Test Resource to a local dir '########################################################################### Function QCGetResource(resourceName,saveTo)     Set qcConn = QCUtil.QCConnection     Set oResource = qcConn.QCResourceFactory     Set oFilter = oResource.Filter     oFilter.Filter("RSC_FILE_NAME") = resourceName     Set oResourceList = oFilter.NewList     If oResourceList.Count = 1 Then         Set oFile = oResourceList.Item(1)         oFile.FileName = resourceName         oFile.DownloadResource saveTo, True     End If         Set qcConn = Nothing     Set oResource = Nothi...

compare Two Text files using Vb Script

Public Function CompareFiles (FilePath1, FilePath2) Dim FS, File1, File2 Set FS = CreateObject(“Scripting.FileSystemObject”) If FS.GetFile(FilePath1).Size <> FS.GetFile(FilePath2).Size Then CompareFiles = True Exit Function End If Set File1 = FS.GetFile(FilePath1).OpenAsTextStream(1, 0) Set File2 = FS.GetFile(FilePath2).OpenAsTextStream(1, 0) CompareFiles = False Do While File1.AtEndOfStream = False Str1 = File1.Read(1000) Str2 = File2.Read(1000) CompareFiles = StrComp(Str1, Str2, 0) If CompareFiles <> 0 Then CompareFiles = True Exit Do End If Loop File1.Close() File2.Close() End Function Return value: The function returns 0 or False if the two files are identical, otherwise True. Example: File1 = “C:\countries\apple1.jpg” File2 = “C:\countries\apple3.jpg” If CompareFiles(File1, File2) = False Then MsgBox “Files are identical.” Else MsgBox “Files are different.” End If    Source: Mercury Forum’s KB articles

CreateImageFromClipBoard using QTP

'-------------------------------------------------------------------------' Method : CreateImageFromClipBoard' Author : Jai Purpose : It gets the clipboard image and convert as a image file.' Parameters: FileName - String, contains the BMP file name' iIndex - Integer, contains the Worksheet index' Returns : String. The replaced file name it gives.' Caller : - Nil' Calls : - Nil' ------------------------------------------------------------------------- Sub CreateImageFromClipBoard(sFileName) Dim wshShell,ShellReturnCode, sCmdExec Set WshShell = WScript.CreateObject("WScript.Shell") sCmdExec = "D:\autostuff\i_view32.exe /silent /clippaste /convert="& sFileName ShellReturnCode = WshShell.Run(sCmdExec, 1, True) End Sub