軟件測試工具QTP的Test參數以及頂級Action參數的使用 軟件測試工具
網上有些關于如何使用Action參數的文章,不過關于QTP的Test參數和Top-Level Action參數的使用例子幾乎沒有。
有些人甚至不知道這個參數做什么用的,尤其是Test的output不知道怎么取。
其實它是外部對象傳給它的(這個外部對象可以是Quality Center,也可以是vbs這樣的驅動程序)。
以下給大家講解一個關于QuickTest的Flight的例子。
首先,在QTP里錄制一段腳本,代碼如下:
CODE:
SystemUtil.Run "C:\Program Files\Mercury\QuickTest Professional\samples\flight\app\flight4a.exe","","C:\Program Files\Mercury\QuickTest Professional\samples\flight\app\","open"
Dialog("Login").WinEdit("Agent Name:").Set Parameter("InAction1")
wait 5
Dialog("Login").WinEdit("Agent Name:").Type micTab
Dialog("Login").WinEdit("Password:").SetSecure "4649c633ffc8803c10097292953c6334fde3e923"
Dialog("Login").WinEdit("Password:").Type micReturn
Window("Flight Reservation").Close
Parameter("OutAction1") = True
然后,鼠標選中Keyword View中的Action1,點右鍵---Action Property,在Parameters的Tab標簽下,分別加入:輸入參數 InAction1 ,類型String;輸出參數 OutAction1,類型 Boolean。如下圖。再然后,在QTP的菜單File--->>Settings的Parameters的Tab標簽下,分別加入:輸入參數 InParam1 ,類型String;輸出參數 OutParam1,類型 Boolean。如下圖。
接著,鼠標還是選中Keyword View中的Action1,點右鍵,這次點“Action Call Properties”,在Parameter Values里進行參數化傳遞設置,把InParam1的值傳遞給InAction1,把OutAction1的值傳遞給OutParam1。如下圖。
以上設置完畢后,點“保存”,保存到C:\下,存為Test1好了。
最后,在你的硬盤上新建一個vbs文件,文件內容如下:
CODE:
Dim qtApp ,pDefColl,pDef ,rtParams,rtParam
Set qtApp = CreateObject("QuickTest.Application")
qtApp.Launch
qtApp.Visible = True
qtApp.Open "C:\Test1"
Set pDefColl = qtApp.Test.ParameterDefinitions
cnt = pDefColl.Count
Indx = 1
While Indx <= cnt
Set pDef = pDefColl.Item(Indx)
Indx = Indx + 1
Wend
Set rtParams = pDefColl.GetParameters()
Set rtParam = rtParams.Item("InParam1")
rtParam.Value = "songfun"
qtApp.Test.Run , True, rtParams
MsgBox rtParams.Item("OutParam1").Value
做完這步之后,保存這個vbs文件,雙擊執行這個vbs文件,你會發現它自動啟動了QTP,而且進行了自動測試,最后還取到了運行成功與否的布爾值。這就是關于Test、Top-Level Action參數使用的例子,它的參數的整個傳遞過程是:外部vbs文件 傳參數給QuickTest的Test的輸入參數InParam1,然后InParam1傳參數到InAction1去驅動了Action1的測試,然后通過這個Action1得出了OutAction1的值,然后通過OutAction1傳給OutParam1,最后再傳回到vbs文件中。示例用MsgBox來打出重新傳回到vbs文件中的字符串。
原文轉自:http://www.anti-gravitydesign.com