How to create frame work for qtp?
Answer / 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 |
Which MS Excel formulas are possible to use in the DataTable? I am searching a formula for searching a field in the datatable
Why divide a test into three action calls?
what is the difference between an Action and a function in real time
Could someone explain me how to work on Out put values, explain with some example on Flight Reservation. I want to insert the out put value for the order No. Please explain the steps with some example.
Hi All I am installing QTP 8.0/8.2 in my office desktop (WIN XP) but it is not working. Inspite Installion is succesfully done but when i open qtp from programs it opens only first screen of add-in and after that it disappears. But in my other computer at home (winxp) it is working fine. Can you please give the reason, why it is not working in office desktop. DEEPAK SINGH
in which situation u will use recording and in which situation u will used to write script manually
Hi All, issue is related to handling pop up script generated in IE, and run on mozilla. In App Under Test, when we get the alert pop ups, we just click ok button. if we need to run the same code on mozilla it will not identify . so we will check browser if browser(*).dialog(IE object).exits browser(*).dialog(IE object).winbutton(OK).click else 'by default mozilla browser(*).dialog(mozilla object).page(*).webbutton(OK).CLICK END IF But my qustion is. Do we write the above piece of code where ever we get such kind of pop ups from the application like alert pop up, confirmation pop up.... OR do we have any other alternative way to do this by using any functions in Recovery Scebarios? If Any of u know idea please do help me in this regard. or send answer to kravimb@gmail.com
Does the Existing reusable action can be modified at the time of calling the action?? Please help me..
Extract a word from a sentenece?
Some time when i wanna learn the object i face issue like i am not able learn the object in proper manner... eg:for text bo on web page it should learn as webedit but some times it reads as winobject:internetexpoler-server, because of this i have to uninstall the qtp and re-install it again when i do this it reads the object perfectly.....plz suggest the soln
assume i have few url link how will i dynamically call then using descriptive programming?
How we can differentiate between stand alone application and web application in QTP?