實驗四+158+余超勇
一、實驗目的
1) 學習QTP工具的使用
2)了解黑盒自動化測試
二、實驗要求
(1)對被測程序進行黑盒測試用例設計
(2)對QTP的飛機訂票系統的任一界面或控件實現自動化測試。(測試的具體自選)
(3)寫出該程序的缺陷。
三、實驗內容
1、對QTP的樣例小程序飛機訂票系統,實現自動化測試。(4a)
2、要求:
1)寫出飛機訂票系統的被測需求。
自行選擇需要測試的部分,根據自己的能力,可大,可小。
描述,被測程序,與被測部分的功能。
2)設計測試用例。寫出測試用例表。
3)編寫測試腳本,實現自動化測試。
4)寫測試小結。該程序的缺陷,和測試結果。
3、實驗總結。
四、實驗步驟
1.被測需求:
飛機訂票系統:登錄系統成功,輸入日期、出發地、目的地、飛機班次、顧客的姓名、飛機票數、類型等進行訂票。
2、測試用例:
用例編號 |
輸入 |
預期結果 |
實際結果 |
1 |
日期為空 |
選擇地點,彈出警告提示框 |
彈出警告 |
2 |
10/10/10 |
選擇地點,彈出警告提示框 |
彈出警告提示日期應合法 |
3 |
17/6/17 |
選擇地點,彈出警告提示框 |
彈出警告,提示月份應合法 |
4 |
10/40/17 |
選擇地點,彈出警告提示框 |
彈出警告,提示日期應合法 |
5 |
11/40/17 |
選擇地點,彈出警告提示框 |
彈出警告,提示日期應合法 |
6 |
02/30/17 |
選擇地點,彈出警告提示框 |
彈出警告,提示日期應合法 |
7 |
07/05/17 |
選擇地點,進入選擇航班頁面 |
進入選擇航班頁面 |
8 |
07/05/17,起飛地點為空 |
無法點擊flights,出現警告提示框 |
出現警告提示應選擇起飛點 |
9 |
07/05/17,到達地點為空 |
無法點擊flights,出現警告提示框 |
出現警告提示應選擇到達點 |
9 |
07/05/17,選london起飛,LosAngelesdaoda ,19102航班 |
點擊ok,顯示航班信息 |
顯示航班信息 |
10 |
選擇航班後更改起飛點為Paris |
到達點和航班信息清空 |
到達點和航班信息清空 |
11 |
選擇航班後更改到達點為Paris |
航班信息清空 |
航班信息清空 |
12 |
正確顯示航班信息,輸入用戶名zhangsan,類別經濟艙,票數20 |
提示一次最多買10張 |
提示最多買10張 |
13 |
正確顯示航班信息,輸入用戶名zhangsan,類別經濟艙,票數10 |
訂票成功 |
訂票成功 |
14 |
正確顯示航班信息,輸入用戶名123a; ,類別經濟艙,票數10 |
訂票成功 |
訂票成功 |
3、測試腳本:
Dialog("Login").WinEdit("Agent Name:").Set "mercury" Dialog("Login").WinEdit("Agent Name:").Type micReturn Dialog("Login").Dialog("Flight Reservations").WinButton("確定").Type micReturn Dialog("Login").WinEdit("Password:").Type micTab Dialog("Login").WinButton("OK").Type micShiftDwn + micTab + micShiftUp Dialog("Login").WinEdit("Password:").SetSecure "594cb4bbe3d41669eb4ead37c4bfdef7e682bec6" Dialog("Login").WinEdit("Password:").Type micReturn Window("Flight Reservation").WinObject("Date of Flight:").Type "101010" Window("Flight Reservation").WinComboBox("Fly From:").Select "London" Window("Flight Reservation").Dialog("Flight Reservations").WinButton("確定").Click Window("Flight Reservation").WinObject("Date of Flight:").Click 19,6 Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type "170754" Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type "23" Window("Flight Reservation").WinComboBox("Fly To:").Select "Frankfurt" Window("Flight Reservation").WinButton("FLIGHT").Click Window("Flight Reservation").Dialog("Flight Reservations").WinButton("確定").Click Window("Flight Reservation").WinObject("Date of Flight:").Click 71,7 Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type "101010" Window("Flight Reservation").WinButton("FLIGHT").Click Window("Flight Reservation").Dialog("Flight Reservations").WinButton("確定").Click Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type "07" Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type "5" Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type micBack Window("Flight Reservation").WinObject("Date of Flight:").Type "070517" Window("Flight Reservation").WinButton("FLIGHT").Click Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "12516 LON 03:12 PM FRA 03:57 PM AA $177.47" Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Check CheckPoint("OK") Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click Window("Flight Reservation").WinEdit("Name:").Set "zhangsan" Window("Flight Reservation").WinRadioButton("Business").Set Window("Flight Reservation").WinEdit("Tickets:").SetSelection 0,1 Window("Flight Reservation").WinEdit("Tickets:").Set "2" Window("Flight Reservation").Activate Window("Flight Reservation").Activate Window("Flight Reservation").WinButton("Insert Order").Click Window("Flight Reservation").Activate Window("Flight Reservation").ActivateView Code
4、執行結果:
該程序在對用戶名的限制上不合理,隨便怎麽輸入都可以通過。
5.測試小結:
自動化測試可以更加方便得測試大量數據,減少手動的需求,提高效率,而且可以通過多次測試排除就偶然情況,總體來說是個強大的測試工具。
實驗四+158+余超勇