How to create frame work for qtp?
Answer Posted / rajarathnam
Test Driver Frame Work in QTP
Components Required For Test Driver Frame Work
1. Spread Sheet.xls
2. Main Script QTP File
3. Script Folder (all script has been saved as .VBS
File and saved under this folder
4. Object Folder (all Object Repositories Shared File
has been saved as .tsr file and saved under this folder
Concept of Test Driver Frame Work
Test Driver Frame Work is purely meant for running
the script one by one and no need to bother any test
engineer to care about. If the project contains more than
100 scenarios to automate, and we need to execute the same
one by one. So we need a test engineer to execute it. But
if we design the Test Driver Frame Work we need to do only
setting the flag value to “y” or “n”. In order to execute
the script set the flag value as “y” else “n”.
All the script files are saved as .VBS file and
saved in the Script Folder and the path of the Script file
path should be populated in the Script_Path Column in the
Spread Sheet.xls file.
All the Shared Repositories file are saved as .tsr
file and saved in the Object Folder and the Object
Repository File Path should be populated in the
Repository_Path Column in the Spread Sheet.xls file.
In the Main Script we are calling the
Spreadsheet.xls file and we get the row count from the
sheet and we are sending the row count to the loop. First
the active row is set to Row1 and we fetch the value from
Flag, if the value of flag is “y” then we fetch the value
of script path and repositorypath and we call appropriate
script and object repositories. if the value of flag is “n”
we will execute that row and the pointer is send to next
row.
By this we can execute all the scenarios without a
test engineer, only we have to do is invoking the Main
Script in the QTP.
Folder Structure
-->TDF (Folder)
-->Main Scripts (Folder)
|
|--> Scripts in .VBS extensions
-->Object
-->Script
-->Spreadsheet.xls
Spread Sheet.Xls
sino Scenario Name Script_Path Repository_Path Flag
1 insert c:\tdf\script\insert.vbs
c:\tdf\object\insert.tsr y
2 open c:\tdf\script\open.vbs
c:\tdf\object\open.tsr y
3 graph c:\tdf\script\graph.vbs
c:\tdf\object\graph.tsr y
Main Script (saved as a QTP File)
systemutil.Run("C:\Program Files\Mercury
Interactive\QuickTest
Professional\samples\flight\app\flight4a.exe")
Dialog("Login").Activate
Dialog("Login").WinEdit("Agent Name:").Set "mercury"
Dialog("Login").WinEdit("Password:").Set "mercury"
Dialog("Login").WinButton("OK").Click
datatable.AddSheet("newsheet")
datatable.ImportSheet "c:\tdf\spreadsheet.xls","sheet1","new
sheet"
n=datatable.GetSheet("newsheet").getrowcount
For i = 1 to n
datatable.SetCurrentRow(i)
flag=datatable("Flag","newsheet")
If flag = "y" Then
scriptpath=datatable.Value
("Script_Path","newsheet")
objpath=datatable.Value
("Repository_Path","newsheet")
repositoriescollection.RemoveAll
repositoriescollection.Add(objpath)
executefile scriptpath
repositoriescollection.RemoveAll
End If
Next
Script Folder
Script File
Insert Script
Window("Flight Reservation").Activate
Window("Flight Reservation").WinButton("Button").Click
Window("Flight Reservation").WinObject("Date of
Flight:").Type "111111"
Window("Flight Reservation").WinComboBox("Fly
From:").Select "London"
Window("Flight Reservation").WinComboBox("Fly
To:").Select "Frankfurt"
Window("Flight Reservation").WinButton("FLIGHT").Click
Window("Flight Reservation").Dialog("Flights Table").WinList
("From").Select "12536 LON 08:00 AM FRA 08:45 AM
AA $100.50"
Window("Flight Reservation").Dialog("Flights
Table").WinButton("OK").Click
Window("Flight Reservation").Activate
Window("Flight Reservation").WinEdit("Name:").Set "raja"
Window("Flight Reservation").WinButton("Insert Order").Click
Window("Flight Reservation").Activate
Open Script
Window("Flight Reservation").Activate
Window("Flight Reservation").WinButton("Button").Click
Window("Flight Reservation").WinButton("Button_2").Click
Window("Flight Reservation").Dialog("Open
Order").WinCheckBox("Order No.").Set "ON"
Window("Flight Reservation").Dialog("Open Order").WinEdit
("Edit_2").Set "4"
Window("Flight Reservation").Dialog("Open Order").WinButton
("OK").Click
Graph Script
Window("Flight Reservation").Activate
Window("Flight Reservation").WinButton("Button_2").Click
Window("Flight Reservation").WinButton("Button").Click
| Is This Answer Correct ? | 12 Yes | 2 No |
Post New Answer View All Answers
How can we import into Excel "Details" ,"Result" ,"Time" parameters from within a Results Report which is generated after a Run error when a script is executed in QTP? Refer E.g below Status Functionality Description RunDate Fail Login User should be able to Login 12/3/2007 StartTime EndTime Details* 1:31:58 PM 1:32:29 PM (this one i want)
what are the frame work models of qtp?which frame work you follow in your company?and explain it process?
Explain how Does Run time data (Parameterization) is handled in QTP?
How to use transactions in qtp?
How can i get the image text that changes dynamically? Here i have used "GetROProperty", but it's not working. I used like Ex:Browser("webmail").Page("inbox").image ("captchaimage).getroproperty("innertext/text/value")
How to test the login page in different ways in automation testing and i need code?
What is keyword view?
Hi! Using Descriptive Programming How do we get Parent object for an object by writing script(DP). Say, i want to get a parent object for a "Link" in a web page by writing script in Descriptive Programming.
Approach for Installation,comaptibility,system testing
Explain the concept of object repository and how quicktest professional (qtp) recognises objects?
How many lines of code in each script of QTP?
Our company is having a windows client server application developed in vb.net. so there is a treeview and i am not in a position to record the click events in QTP. so kindly help. Vivek
Hoe can we do retesting using functions please give the code for it using login page
How we can use the database checkpoint on a java web based application in which the database connectivity is done using JDBC->Pure Java type (in this type there is no need to create a DSN). At present in QTP we can fetch database values using checkpoint only through DSN. Is there any programming for this if we don't have DSN (ODBC)
What is system testing and what are the different types of tests you perform in system testing?