一.前言
1.為什么功能測試要使用自動化測試工具
(1)存在大量回歸測試
(2)存在大數據量的測試
(3)自動化測試工具可以嚴格霜大、高效的完成測試
(4)無人值守
2.使用自動化測試工具的條件
(1)需求穩(wěn)定
(2)冒煙測試通過
3.常用的自動化測試工具
(1)HP MI QTP
(2)HP WinRunner
(3)QARun
(4)IBM Rational Robot
(5)開源 Selenium
4.對測試工程師的影響
(1)待遇
(2)發(fā)展
(3)競爭力
二、QTP簡介
1.QTP全稱:Quick Test Professional
2.關鍵字驅動:把被測系統(tǒng)中的控件識別成對象革答,測試用例是對對象做各種操作
3.QTP战坤,使用VBS語言
4.QTP10.0
三、QTP界面介紹
1.插件管理界面
根據被測系統(tǒng)使用的技術決定選擇插件的類型
主界面中Tools\Options\General\Display Add-in Manager選項勾選残拐,顯示插件管理界面
2.如何新建一個Test
方式三種:
(1)點擊“StartPage”后的“Test”標簽
(2)工具欄中的“New”快捷鍵
(3)菜單欄中File\New\Test
3.兩個視圖(重點):
Keyword View(關鍵字視圖):表格形式展現(xiàn)步驟
Expert View(專家視圖):VBS代碼的形式展示步驟
注意:兩個視圖中的代碼是一一對應的途茫,是一個代碼的兩種展現(xiàn)方式
4.QTP里的測試以Test為單位組織
一次只能打開一個Test
5.關鍵字視圖中的列
(1)Item(項目):存儲被測系統(tǒng)中操作的頁面元素對象
(2)Operation(操作):對被測系統(tǒng)的相應對象所做的操作
(3)Value(值):操作使用的數據
(4)Documentation(文檔):QTP自動生成的注釋
(5)Comment(注釋):手動添加的注釋
6.ActiveScreen(界面截圖)
7.如何錄制代碼
三種方式:
(1)工具欄的“Record”快捷按鈕
(2)菜單欄Automation\Record
(3)F3
8.如何停止錄制:
三種方式:
(1)工具欄的“Stop”快捷按鈕
(2)菜單欄Automation\Stop
(3)F4
9.如何回放錄制:
三種方式:
(1)工具欄的“Run”快捷按鈕
(2)菜單欄Automation\Run
(3)F5
10.系統(tǒng)設置:
(1)設置關鍵字視圖中的字體大小
顯示關鍵字視圖,Tools\View Options\Fonts and Size溪食,設置Size
(2)設置關鍵字視圖中的字體大小
顯示專家視圖囊卜,Tools\View Options\Fonts and Size,設置Size
(3)回放時間間隔的設置
Tools\Options\Run\Run mode错沃,運行模式:
Fast:快速栅组,無間隔
Nomal:正常,設置步驟之間的間隔枢析,單位是毫秒
(4)恢復頁面布局:
Tools\Options\General\Restore Layout按鈕(恢復布局)
四玉掸、自動化測試的流程
1.需求分析
2.制定測試計劃
3.錄制測試腳本
4.增強測試腳本
5.回放腳本,執(zhí)行測試
6.分析測試結果
7.提交測試報告
五醒叁、用QTP錄制APP系統(tǒng)
(1)Flight系統(tǒng)介紹
1.登錄
AgentName:4-10個字符
Password:Mercury/mercury
2.訂票
訂票日期:格式月日年 mm\dd\yy,不能晚于今日
當選擇了Flyfrom和Flyto后司浪,F(xiàn)lights的按鈕可用
Tickets:1-10的整數
3.打開訂單泊业、更新訂單、刪除訂單
4.退出
(1.1):自動啟動的方式 錄制WinApp程序(重點)
步驟:
(1)點擊“Record”
注意:錄制前關閉被測系統(tǒng)
(2)在Record and Run Settings(錄制和運行設置)對話框中啊易,
a.Web中選擇第一項
b.WinApp中選擇第二項(Record and run only on:)
c.通過加號添加被測系統(tǒng)
(3)操作被測系統(tǒng)中的步驟
(4)點擊“Stop”停止錄制
(5)點擊“Run”回放代碼
注意:回放代碼前脱吱,關閉被測系統(tǒng)
練習1:Flight系統(tǒng),使用自動啟動的方式认罩,錄制登錄-創(chuàng)建新訂單-退出箱蝠,回放
練習2:Flight,手動啟動的方式垦垂,錄制登錄-打開訂單編號為10的訂單-退出宦搬,回放
練習3:Notepad,使用自動啟動的方式,錄制啟動-輸入abc-關閉-否,回放
練習4:calc劫拗,手動啟動的方式间校,錄制3+5=關閉,回放
C:\WINDOWS\system32\calc.exe
C:\WINDOWS\system32\notepad.exe
(1.2):手動啟動的方式 錄制WinApp程序
步驟:
(1)點擊“Record”
注意:錄制前關閉被測系統(tǒng)
(2)在Record and run settings里页慷,
a.Web選第一項
b.WinApp選第一項:Record and run any open Windows-based applications
(3)手動打開被測系統(tǒng)
注意:只能通過開始菜單打開
(4)錄制操作步驟
(5)點擊“Stop”結束錄制
(6)點擊“Run”回放代碼
注意:
a.回放前憔足,檢查錄制好的程序,切換到專家視圖酒繁,刪除SystemUtil前的所有步驟的代碼
b.回放前滓彰,關閉被測系統(tǒng)
(1.3)Results Summary中passed的值
自動啟動時:0
手動啟動時:1
手動啟動時:錄制的腳本在Item中會多一步:SystemUtil(啟動應用程序的步驟),之前的操作要刪除州袒,否則會回放失敗
六揭绑、用QTP自動啟動 錄制Web系統(tǒng)(重點)
注意:
(1)IE\Internet選項\內容\自動完成\取消勾選“表單”,取消勾選“記住用戶名”郎哭,再點擊“清除表單”和“清除密碼”的按鈕
(2)IE\Internet選項\高級\重定向提交的表單時發(fā)出警告
(3)錄制時他匪,一定要使用IE,回放時夸研,可以修改使用不同的瀏覽器回放
(4)啟動QTP時邦蜜,要勾選Web插件
(1):Mtours系統(tǒng)介紹(http://localhost:8080/mtours)
jojo bean
1.注冊(Register)的用戶可以登錄
2.登錄(Sign-on)、訂票(往返票亥至、乘客姓名可以輸入多個)悼沈、查看訂單、刪除訂單抬闯、退出(Sign-off)
步驟:
1:新建1個Test
2:點擊Record按鈕井辆,
3:在Web選項卡中关筒,選擇第二項溶握,其它都選擇第一項
4:在Web選項卡中,輸入被測系統(tǒng)的訪問地址
5:錄制每個操作步驟
6:點擊Stop
7:點擊Run,回放代碼蒸播,
注意:回放前睡榆,關閉瀏覽器
說明:錄制時萍肆,只能使用IE瀏覽器錄制,回放時胀屿,可以通過修改代碼指定其他瀏覽器(高級)
不建議使用手動啟動的方式錄制Web系統(tǒng)
七塘揣、QTP實現(xiàn)原理(非常重要)
1.對象倉庫:Resources\Object repository
Ctrl+R
2.錄制原理:
(1)獲得被操作對象的所有屬性
(2)用唯一的對象名稱(Item列)在對象倉庫里記錄該對象
(3)在對象倉庫中存儲該對象的全部屬性
(4)標識對象的關鍵屬性
記錄位置:Description Properties
(5)在測試腳本中記錄被操作對象所做的操作(operation列)和數據(value列)
3.回放原理
(1)從測試腳本中獲取對象名稱(Item列)、對象的操作(Operation列)宿崭、對象操作的數據(value列)
(2)使用對象名稱在對象倉庫中獲取到其關鍵屬性
(3)使用關鍵屬性在被測系統(tǒng)中識別唯一操作對象
(4)使用腳本中的操作(Operation列)和數據(Value列)驅動被測系統(tǒng)的實際運行對象
4.概念(了解):
(1)TO:Test Object 對象倉庫中存儲的對象
(2)RO:Run-time Object 運行時對象亲铡,被測系統(tǒng)實際運行時的對象
對象倉庫:Resource(資源)\Object Repository
(1) 對象的組織結構:樹狀結構顯示對象和父對象的父子關系
(2) 所有對象都有1個唯一標識:對象名稱(Name)
(3) 對象倉庫,在Test Object Details(測試對象詳細信息)/Description Properties()里顯示對象的所有關鍵屬性
(4) 對象的關鍵屬性葡兑,可以修改和刪除和增加奖蔓,不建議初學者進行增加,修改和刪除
如果被AUT里的對象的關鍵屬性有修改讹堤,那我們要維護對象倉庫中的對象:修改關鍵屬性
(5) 對象倉庫中的對象吆鹤,是可以增刪
添加對象到對象倉庫
兩種方式:
(1)打開對象倉庫,打開被測系統(tǒng)洲守,停留在要添加的對象所在的頁面疑务,
點擊工具欄中的“Add Objects to Local”快捷按鈕,
或者菜單欄中的Object\Add Objects to Local梗醇,
點擊被測系統(tǒng)中要添加的對象知允,確認后添加
(2)通過ActiveScreen上截圖界面中,
右鍵點擊要添加的對象叙谨,
選擇第三個項目(View\Add Object),
確認后添加,,,只適用于在ActiveScreen中顯示的控件
Object Spy(對象探測器)
作用:查看當前AUT中的實際運行對象(RO)的所有屬性
位置:
(1)QTP主頁面的工具欄中的小人頭圖標
(2)QTP主頁面的Tools\Object Spy
(3)對象倉庫的工具欄中的小人頭圖標
(4)對象倉庫Menu\Tools\Object Spy
注意:如果ObjectSpy遮擋被測系統(tǒng)的控件廊镜,按住左Ctrl鍵操作,拖走唉俗,顯示出控件嗤朴,再捕獲
練習6:Flight登錄頁面的AgentName文本框(WinEdit)中的當前輸入內容記錄在哪個屬性中-------text
練習7:Flight主頁面的Flights按鈕,是否可用記錄在哪個屬性中------enabled
練習8:Mtours登錄用戶名文本框(webEdit)中的當前輸入內容記錄在哪個屬性中---value
在關鍵字視圖中增刪改操作步驟
(1)增加步驟:
a.添加要操作的步驟的對象到對象倉庫
b.確定添加位置虫溜,選中該位置上一個步驟
c.右鍵雹姊,選擇Insert New Step
d.在Item列中選擇對象,Operation中確認操作步驟衡楞,在Value列中填入數據
注意:如果要添加步驟的對象沒有在對象倉庫中吱雏,先添加到對象倉庫,然后再添加步驟
(2)刪除步驟:
右鍵\Delete Step
(3)修改步驟:
a.修改Item瘾境、Operation歧杏、Value均可修改
b.點擊要修改的內容,下拉菜單中修改
(4) 注意:
a.增刪改之前迷守,回放代碼犬绒,確認AUT的代碼可以正常回放兑凿,然后再修改
b.增刪改時凯力,按照修改后的步驟到AUT中手動操作一遍茵瘾,確認可以正常順序妊
c.增刪改之后,回放代碼
6.系統(tǒng)設置
(1)對象同步時間:默認是20秒咐鹤,可修改
意義:回放時到被測系統(tǒng)中識別對象(步驟3)的最長時間
位置:File\Settings\Run\Object synchronization timeout :xxx seconds
練習9:a.錄制Flight登錄拗秘,退出
b.修改Flight登錄的用戶名
c.修改Flight登錄的密碼的操作,從SetSecure修改為Set祈惶,注意:Value值也要修改為不加密的密碼
d.刪除退出的步驟
e.修改點擊OK的步驟為點擊Cancel按鈕
f.在輸入密碼步驟后雕旨,增加點擊Help的步驟
g.回放代碼