QuickTest Professional

QuickTest Professional

QuickTest Professional簡稱QTP,是一種自動測試工具。使用QTP的目的是想用它來執行重複的手動測試,主要是用於回歸測試和測試同一軟體的新版本。因此你在測試前要考慮好如何對應用程序進行測試,例如要測試那些功能、操作步驟、輸入數據和期望的輸出數據等。

參數說明


這是一種針對功能測試和回歸測試自動化提供業界最佳的解決方案 - 適用於所有主要軟體應用程序和環境,也可以說成是關鍵字驅動測試方法
1)QTP是一個側重於功能的回歸自動化測試工具;提供了很多插件,如:.NET的,Java的,SAP的,Terminal Emulator的等等,分別用於各自類型的產品測試。默認提供Web,ActiveX和VB。
2)QTP支持的腳本語言是VBScript,這對於測試人員來說,感覺要“舒服”得多(如相比SilkTest採用C語言)。VBScript畢竟是一種鬆散的、非嚴格的、普及面很廣的語言。
3)QTP支持錄製和回放的功能。錄製產生的腳本,可以拿來作為自己編寫腳本的template。錄製時,還支持一種lower level 功能,這個對於QTP不容易識別出來的對象有用,不過它是使用坐標來標識的,對於坐標位置頻繁變動的對象,採用這種方式不可行。另外,QTP的編輯器支持兩種視圖:Keyword模式和Expert模式。Keyword模式想法是好的,提供一個描述近似於原始測試用例的、跟代碼無關的視圖(我基本很少用,除了查看、管理當前test中各個action的完整流程),而Expert就是代碼視圖,一般編寫腳本都在這個區域。
4)一個有用的工具:ObjectSpy,可以用來查看Run-time object和Test object屬性和方法。
5)QTP通過三類屬性來識別對象:a)Mandatory; b)Assitive; c)Ordinalidentifiers。大部分情況下,通過對象的一些特定屬性值就可以識別對象(類型a)。這些屬性可以通過Tools->Object Identification 定義。
6)Object Repository(OR)是QTP存儲對象的地方。測試腳本運行后,QTP根據測試腳本代碼,從這個對象庫中查找相應對象。每個Action可以對應有一個或者多個OR,也可以設置某個OR為 sharable的,這樣可以供其他Action使用。注意,使用QTP錄製功能時,默認將被測對象放在local OR中,可以通過 Resources->Object Respository,選擇Local查看。
7)說到QTP的要點,不得不說Action。Action是QTP組織測試用例的具體形式,擁有自己的DataTable和Object Repository,支持Input和output參數。Action可以設置為share類型的,這樣可以被其他test中的Action調用(注意:QTP是不支持在一個test中調用另外一個test的,只有通過sharable action來調用)。
8)如3)所述,一個test中,多個action的流程組織,只有通過Keyword視圖查看和刪除,在Expert視圖中沒有辦法看到。
9)調用Action可以通過菜單Insert->Callto *** 來實現。QTP提供三種類型的調用方式:a)call to new Action,在當前test中創建一個新的Action;b)call to Copy of Action;c)call to existing action,調用一個re-usable action,如果這個re-usableaction來自另外一個test,將以只讀的方式插入到當前test中。
10)QTP提供excel 形式的數據表格DataTable,可以用來存放測試數據或參數。DataTable有兩種類型:global 和local。QTP為DataTable提供了許多方法供存取數據,在對測試代碼進行參數化的時候,這些方法非常有用。
11)環境變數(EnvironmentVariables)。在一個test中,環境變數可以被當前test中所有action共享。環境變數也有兩種類型:build in 和user defined。用戶自定義的環境變數可以指向一個XML文件,這樣可以實現在眾多test之間共享變數。
12)QTP可以引用外部的VBS代碼庫,通過Settings-》Resource加入,也可以ExecuteFile命令在代碼中直接執行。這種VBS庫可以為所有action和test共享。
13)QTP默認為每個test提供一個測試結果,包括Passed,Failed,Done,Warning和information幾種狀態類型,可以進行對結果Filter。但是,只能為每個test產生一個testing result,不能為多個testing產生一個總的testing result.

特點


MercuryQuickTest Professional 甚至可以使新測試人員在幾分鐘內提高效率。您只需通過按“記錄”按鈕,並使用執行典型業務流程的應用程序即可創建測試腳本。系統使用簡明的英文語句和屏幕抓圖來自動記錄業務流程中的每個步驟。用戶可以在關鍵字視圖中輕鬆修改、刪除或重新安排測試步驟。
QuickTest Professional 也加快了更新流程。當測試中應用程序出現變動(例如“登錄”按鈕重命名為“登入”)時,您可以對共享對象庫進行一次更新,然後此更新將傳播到所有引用該對象的腳本。您可以將測試腳本發布到 Mercury TestDirector,使其他 QA 團隊成員可以重複使用您的測試腳本,從而消除了重複工作。