QTP中action之間的參數傳遞應用實例詳解

發表于:2009-05-09來源:作者:點擊數: 標簽:qtpQTPactionAction參數
這個問題本來不想寫,個人認為: QTP 中action之間的參數傳遞,應該是比較容易的事情.但是今天用的時候,突然沒有設置成功,哎! 忘得真是個快啊!所以有感而發,相信這篇文章對很多人都會有用,我自己也拿來備忘. 好了,廢話少說,直接切入正題. 還是用QTP自帶的flight

這個問題本來不想寫,個人認為:QTP中action之間的參數傳遞,應該是比較容易的事情.但是今天用的時候,突然沒有設置成功,哎! 忘得真是個快啊!所以有感而發,相信這篇文章對很多人都會有用,我自己也拿來備忘.

  好了,廢話少說,直接切入正題.

  還是用QTP自帶的flight4a.exe為例.

  本例的業務流程:首先登陸系統,然后新建一訂單,然后產生訂單編號,最后,通過傳遞這個定的那編號,去查詢這條訂單.

  用到QTP的知識:QTP中Action split(拆分);Action中參數傳遞.

  首先我們錄制完成的一個流程:(1)輸入用戶名和密碼,登錄系統;(2)輸入訂單日期,起始地點,選擇航班.(3)輸入訂購人名稱以及數量,選擇類別,點擊 insert產生訂單.系統會自動生成訂單編號.(4),通過傳遞這個定的那編號,去查詢這條訂單.(5)然后退出系統.

  按照流程錄制玩腳本,對這個腳本進行拆分,在Edit-Action-Split Action 中,如圖:

  

  注意:Nested為我們要按照嵌套模式劃分,因為我們首先要劃分一個main Action,這個main Action中去調用其他嵌套的action(如:log_in,new_order,insert_order,open_order,log_out.),所以第一次劃分的時候選擇的是Nested.在劃分時,記住一定是在Expert視圖中劃分,鍵鼠標光標放在第一行代碼的前面,然后在Edit-Action-Split Action,就出現如上圖的界面.

  接下,用上邊同樣的方法,劃分其他Action,這是要選擇:Independent of each other.即,劃分幾個獨立的Action.每次能將一個Action劃分成2個,重復操作,直到劃分完成.

  注意:每次在如圖:上.界面中,1st action 的Name是上一次劃分時的2nd action的Name.

  我們需要將這個業務流程拆分成一個main Action 和 4個Action分別是:log_in,new_order,insert_order,open_order,log_out.

  劃分完成后,在main action 中產生的腳本如下:

main 腳本(這是已經完成修改后的腳本)
*************************************
RunAction "log_in", oneIteration
RunAction "new_order", oneIteration
RunAction "insert_order", oneIteration,orderno
RunAction "open_order", oneIteration,orderno
RunAction "log_out", oneIteration


其他腳本為:

log_in 腳本
**************************************
Dialog("Login").WinEdit("Agent Name:").Set "Cheers.Lee"
Dialog("Login").WinEdit("Password:").SetSecure "49e93b35b292190e081ad0ce13cf2b8519acfc2d"
Dialog("Login").WinButton("OK").Click

new_order 腳本
***************************************
Window("Flight Reservation").ActiveX("MaskEdBox").Type "090418"
Window("Flight Reservation").WinComboBox("Fly From:").Select "Frankfurt"
Window("Flight Reservation").WinComboBox("Fly To:").Select "London"
Window("Flight Reservation").WinButton("FLIGHT").Click

insert_order 腳本(這是已經完成修改后的腳本)
****************************************
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "11427  FRA  09:48 AM  LON  10:31 AM  AA    $170.47"
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click
Window("Flight Reservation").WinEdit("Name:").Set "lihuichang"
Window("Flight Reservation").WinEdit("Tickets:").SetSelection 0,1
Window("Flight Reservation").WinRadioButton("First").Set
Window("Flight Reservation").WinRadioButton("Economy").Set
Window("Flight Reservation").WinButton("Insert Order").Click
wait 8
Window("Flight Reservation").WinEdit("Order No:").Output CheckPoint("Order No:")

open_order 腳本(這是已經完成修改后的腳本)
*****************************************
Window("Flight Reservation").Activate
Window("Flight Reservation").WinMenu("Menu").Select "File;Open Order..."
Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Order No.").Set "ON"
Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").SetParameter("orderno")

log_out 腳本
*****************************************
Window("Flight Reservation").WinMenu("Menu").Select "File;Exit"

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97