實驗四+033+王泓澤
一、實驗目的
1) 學習QTP工具的使用
2)了解黑盒自動化測試
二、實驗要求
(1)對被測程序進行黑盒測試用例設計
(2)對QTP的飛機訂票系統的任一界面或控件實現自動化測試。(測試的具體自選)
(3)寫出該程序的缺陷。
三、實驗內容
1、對QTP的樣例小程序飛機訂票系統,實現自動化測試。(學號被3整除,測3a;余1,測3b;余2,測4a)
2、要求:
1)寫出飛機訂票系統的被測需求。
自行選擇需要測試的部分,根據自己的能力,可大,可小。
描述,被測程序,與被測部分的功能。
2)設計測試用例。寫出測試用例表。
3)編寫測試腳本,實現自動化測試。
4)寫測試小結。該程序的缺陷,和測試結果。
3、最後寫實驗總結。
4、實驗步驟
測試需求:飛機訂票系統登錄測試
需求描述:根據用戶輸入,測試不同的用戶名密碼是否可以成功登錄。
1.設計測試用例
編號 |
username&password |
預期結果 |
實際結果 |
是否符合 |
1 |
Aaaa&mercury |
登錄成功 |
登錄成功 |
√ |
2 |
aaaa&mer |
提示密碼錯誤 |
提示密碼錯誤 |
√ |
3 |
aaa&mercury |
提示用戶名錯誤 |
提示用戶名錯誤 |
√ |
4 |
aaa&mercury222 |
提示用戶名錯誤 |
提示用戶名錯誤 |
√ |
5 |
Wwww& |
提示密碼不為空 |
提示密碼不為空 |
√ |
6 |
&mercury |
提示用戶名不為空 |
提示用戶名不為空 |
√ |
7 |
www&mercury |
登錄成功 |
登錄成功 |
√ |
8 |
ww ww&mercury |
登錄成功 |
登錄成功 |
√ |
9 |
www &mercury |
登錄成功 |
登錄成功 |
√ |
10 |
Aaaa& mercury |
提示密碼錯誤 |
提示密碼錯誤 |
√ |
11 |
Bbbb&merc ury |
提示密碼錯誤 |
提示密碼錯誤 |
√ |
12 |
Cccc&mercury |
提示密碼錯誤 |
提示密碼錯誤 |
√ |
13 |
Null&mercury |
登錄成功 |
登錄成功 |
√ |
14 |
!@#$%&mercury |
登錄成功 |
登錄成功 |
√ |
15 |
李先生&mercury |
提示用戶名錯誤 |
登錄成功 |
× |
2. 編寫腳本代碼
Dim url url="D:\360Downloads\Software\軟件測試QTP\TDPlugin\samples\flight\app\flight3a.exe" if Dialog("Login").Exist(1) Then OptionalStep.Dialog("Login").WinEdit("Agent Name:").Set DataTable("username", dtGlobalSheet) OptionalStep.Dialog("Login").WinEdit("Password:").Set DataTable("password", dtGlobalSheet) OptionalStep.Dialog("Login").WinButton("OK").Click else ‘如果QTP不能自己打開被測試程序就使用該功能打開 SystemUtil.Run url OptionalStep.Dialog("Login").WinEdit("Agent Name:").Set DataTable("username", dtGlobalSheet) OptionalStep.Dialog("Login").WinEdit("Password:").Set DataTable("password", dtGlobalSheet) OptionalStep.Dialog("Login").WinButton("OK").Click End if ‘檢查點 if Dialog("Login").Dialog("Flight Reservations").Exist(2)Then Dim Errorinfor ‘對錯誤提示信息做一個檢查點,並根據實際情況進行參數化 Dialog("Login").Dialog("Flight Reservations").Static("Agent name must be at").Check CheckPoint("Agent name must be at") Errorinfor=Dialog("Login").Dialog("Flight Reservations").Static("Agent name must be at").GetROProperty("text") Dialog("Login").Dialog("Flight Reservations").WinButton("確定").Click Reporter.ReportEvent micPass, "用戶名驗證通過,提示信息如下",Errorinfor OptionalStep.Dialog("Login").Close else ‘如果用戶名和密碼正確就進入訂票頁面 if Window("Flight Reservation").Exist (2) Then Reporter.ReportEvent micPass, "登錄驗證通過","用戶名密碼正確" Window("Flight Reservation").close End if End if
3. 結果
4.測試小結
通過對QTP飛機訂票系統的黑盒自動化測試,初步掌握了如何進行自動化測試從而省去了許多重復的工作。登錄時不能識別中文字符,即把中文字符當作2個字符處理,另外該程序僅根據用戶輸入的長度是否大於4判斷用戶名正確性且可以包含空格,密碼則必須是mercury(忽略大小寫)且不能包含空格。總結來說一個功能的測試應該寫一個測試腳本,對不同的測試數據可以采用腳本代碼設置條件的方式來進行判斷,如果功能較為復雜的話可以考慮使用多個測試腳本進行測試。
實驗四+033+王泓澤