1.自定義函數,並調用此函數
定義:Function Definition Generator
路徑:Insert->Function Definition Generator
調用:直接輸入函數名稱,便可使用
2.手工插入操作步驟
定義:Dtep Generator
路徑:Insert->Step Generator
3.語法檢查-編輯腳本語法存在錯誤
路徑:Tools->Check Syntax
4.Run Current Action-單獨運行Action
定義:有利於節約時間,單獨編輯腳本
路徑:Automation->Run Current Action
5.Test Batch Runner-批量運行測試腳本
定義:需要在QTP,Tools-options勾選Allow other Mercury products to run test and components
路徑:開始->程序->QTP->Test Batch Runner
6.QTP與LR的整合
定義:更加完善地操作業務編輯LR的腳本
路徑:Insert Step->Start Transaction
7.QTP-Silent Test Runner與模擬LR的調用
定義:模擬LR調用腳本是否成功,可以看出總事務時間
路徑:開始->程序->QTP->Tool->Silent Test Runner
8.LR運行QTP腳本進行性能測試
定義:更加完善業務,完整的設計腳本
路徑:打開LR文件時,文件類型選擇:All files,選擇QTP.USR的文件就OK了注意:LR一定需要WEB & global license纔不會出現報錯
9.output Value-輸出對象屬性值
定義:測試步驟前,查看對像屬性的值;相當於對檢查點填寫值之前的檢查
路徑:Insert->Output Value
10.網頁檢查點
定義:網頁檢查點可以測出所有鏈接的有效性
路徑:插入檢查點,彈出Object Selection窗體時,選擇page:XX->點擊OK就可以添加網頁檢查點
11.Action輸入參數
定義:爲參數定義一個默認值;進行參數化時,直接在parameter types 選擇Test/action parameter會出現剛纔設置的默認值
路徑:Edit->Action->Action Properties
12.調用Action
定義:在new action中往往都需要另外一個Action外做爲引導,這時我們就可以使用調用Action方式來處下
路徑:Insert->Call to Existing Action
定義:設置調用Action的參數化
路徑2:Edit->Action->Action Properties
13.Environment環境變量參數化,及設置變量
定義:可以使用本機器的一些變量名稱,進行設置Action的變量;進行參數化時,直接在parameter types 選擇Environment設置的默認值
設置變量路徑:File->Setting->Environment->Variable type->User-defined
14.Data Driver
定義:查找錄製時,沒有被參數化的對象;並可以對全部沒有被參數化的對象進行參數化
路徑:Tools->Data Driver
15.VBS自動識別和完成
路徑:Tool->View Options:Auto-expand VBScript syntax
16.使用PathFinder對象查找文件
定義:查找系統文件;Folders添加搜索目錄,可以查詢添加目錄的文件
路徑:Tool->Options:Folders
使用方法:x=PathFinder.Locate("查詢文件:Parameters.mtr")
17.systemutil.Run對象應用
定義:運行某程序
使用方法:systemutil.Run "程序路徑+名稱","運行Link地址"
例:systemutil.Run "C:\Program Files\Internet Explorer\IEXPLORE.EXE","http://www.baidu.com/"
18.Report對象應用
定義:可設置單獨操作步驟生成一個報告
路徑:Insert->Reprot
使用方法:Reporter.ReportEvent Status, "Name","Details"
例:Reporter.ReportEvent micPass , "123", "123"
19.Environment對象應用
定義:讀取和設置環境變量(Built-In\User-defined上面有講述Environment應用)
腳本:
OS=Environment.Value("OS")
OSVersion=Environment.Value("OSVersion")
TestName=Environment.Value("TestName")
Reporter.ReportEvent micDone , "Environment" ,"運行測試腳本:" &TestName & "的操作系統爲:" & OS & "版本爲:" & OSVersion
20.wait\print\msgbox函數應用
定義:wait暫停測試腳本;print非模式顯示測試過程信息;msgbox窗體模式顯示測試過程信息
腳本:
wait(10);msgbox ("ABC");
print:
set a=browser...
print a
21.虛擬對象
定義:虛擬對象可以把圖片或其他元素轉化爲按鈕形式出進錄製;虛擬對象只可以在錄製時被使用
路徑:Tools->Virtual Objects->New Virtual Objects
22.Recovery Scenarios-錯誤恢復場景
定義:處理不可遇知的錯誤場景;由於步驟太多不詳細講述使用
路徑:
創建場景:Resources->Recovery Scenario Manager
添加場景:File->setting->Recovery:添加創建場景OK
23.使用set & with
定義:多使用set或with把代碼簡化,便於減少代碼的出錯率
腳本:
set a = browser...
a.link("").click
with browser...
.click
.click
end with
24.Exist
定義:判斷控件是否存在
腳本:if a("").Exist(2) then
msgbox()...
25.猴子測試-隨機數 Randomize&RandomNumber
定義:Randomize初始化隨機數,RandomNumber隨機產生字符
腳本:
Randomize '初始化 For
For Iterator = 1 To 10 Step 1
key=array("123456","%^&*(","是砂")
n=randomnumber(0,2)
send=key(n)
'msgbox send
key=array("123456","%^&*(","是砂") :創建數組
n=randomnumber(0,2) :2爲總的數組量,如果輸入總數組不等於組建的數組,會出現問題
26.通過WMI獲取屏幕高度與寬度
定義:讓猴子任意點擊界面的測試,先獲取屏幕的高度與寬度
腳本:
Computer="."
Set objWMIService=GetObject("winmgmts:\\"& Computer &"\root\CIMV2")
Set colItems=objWMIService.execquery("select * from win32_desktopMonitor",,48)
For Each objitem In colitems
height=objitem.screenheight
width=objitem.screenwidth
Next
MsgBox width & "," & height
27.通過.Net獲取屏幕高度與寬度
定義:讓猴子任意點擊界面的測試,先獲取屏幕的高度與寬度
腳本:
Set CreateInstance=DotNetFactory.CreateInstance("System.Windows.Forms.Screen","System.Windows.Forms")
width=CreateInstance.primaryscreen.workingarea.width
height=CreateInstance.primaryscreen.workingarea.height
msgbox width & "," & height
28.生成DLL文件
定義:QTP調用封裝好的DLL文件,可以提高代率讀寫能力及實現功能的擴展
使用方法:MVS2008->編輯代碼並生成,可以在保存文件夾中的bin\Debug裏找個.DLL文件
29.定時啓動QTP並運行腳本
定義:很多時候測試都運行夜深人靜的時候,定時運行腳本是很有必要的事情了
使用方法:
1.創建.bat文件,內容如下:
'============BAT文件=======================
at 17:06 /interactive cscript C:\rc.vbs
'========================================
2.創建.vbs文件,內容如下:
'============VBS文件=======================
Dim qtApp
Set qtApp = CreateObject("QuickTest.Application")
qtApp.Launch
qtApp.Visible = True
qtApp.Open "G:\qtpscript\temp" '這裏是QTP腳本文件夾地址
qtApp.Test.Run , True
'========================================
30.使用DotNetFactory進行創建
定義:可以此方法調用DLL文件
使用方法:Set a=DotNetFactory.CreateInstance("")
31.運行IE
腳本 :systemutil.run "IEXPLORE.EXE"
加載頁面:Browser("Browser").Navigate "http://baidu.com"
32.自動化測試體會
1.重點選擇複用性高的功能模塊
2.針對模塊編寫測試用例
3.根據測試用例進行開發腳本(注意代碼之間的同步處理:sync\wait)
4.對腳本增加檢查點
5.針對腳本與檢查點進行參數化
6.執行每次用例都保持一致的數據,需要數據恢復的處理
7.對象庫管理(統一命名方式、共享對象庫的使用)
8.測試系統的結構(以模塊爲一個Test、以測試點爲一個Action、以Sheet表爲一個測試用例的單元)
9.批量處理寫好的模塊腳本
10.自動化測試報告
33.InStr 函數
示例:
這個函數說明的是一個字符串在另一個字符串中出現的位置,在自動化測試中,經常用作比較結果來使用。
比如:
Dima,b
a="rtyi"
b="1345krkrtyi:{""><?"
If InStr(b,a)>0Then
MsgBox"測試結果通過"
Else
MsgBox "測試結果失敗"
End If
34.Split 函數
示例:
這個函數主要用於拆分字符串用,在自動化測試開發中主要用於拆分測試數據。
比如:
Dim a,b,i
a="rt124,y556,57777,<>:/*&%"
b=Split(a,",")
For i=0 To Ubound(b)
MsgBox b(i)
Next
35.同時打開多個Action
Window --> New Horizontal Tab Group或者是New Vertical Tab Group這兩種視圖方式。
2012-08-02 更新
36. 實時加載動態對象庫
RepositoriesCollection.add "D:\qtp\link.tsr"
37.垂直侵害選取
使用方法:光標左上角點擊鼠標左鍵往右拉,選取完成後點擊鼠標右鍵
更改代碼:選取後直接輸入代碼即可
38.代碼換行符
使用方法:
Browser(a).page(b).link(c).click
--> Browser(a)._
--> page(b)._
--> link(c).click
39.手寫代碼3種方式
-->1.Step Generator
使用路徑:Insert->Step Generator
使用方法:使用對象庫存在對象,然後打開Step Generator點擊對象生成代碼
-->2.Complete Word
使用路徑:Edit->Advanced->Complete Word
快捷方式:Ctrl+Space
使用方法:自動完成編碼者編寫的代碼
-->3.對象拖動生成方式
使用路徑:存在於Available Keywords
使用方法:直接拖動對象到專家窗口,直接生成代碼
40.對象識別工具-Object SPY
使用技巧:->1.半操作模式--Ctrl鍵:支持點擊界面
->2.全操作模式--Ctrl+Alt鍵:支持點擊和鍵盤輸入
41.小技巧--快捷鍵
Alt+G鍵:快速跳轉定位到調用的Function
Ctrl+shift+space鍵:重新顯示方法的參數
Alt+ "." 鍵:提示function的方法
42.with...End with
使用方法:
browser(a).page(b).link(c).click
browser(a).page(b).link(d).click
browser(a).page(b).link(e).click
-->
with browser(a).page(b)
.link(c).click
.link(d).click
.link(e).click
end with
持續更新ing