(一)檢查點(CheckPoint)
一、為什么要插入檢查點
需要檢查預(yù)期結(jié)果是否正確狭吼,來驗證被測系統(tǒng)功能是否正常
二殖妇、什么是檢查點
在自動化腳本中插入預(yù)期結(jié)果谦趣,
運行回放時,QTP取得被測系統(tǒng)運行時實際數(shù)據(jù)結(jié)果摘悴,
和預(yù)期結(jié)果對比蹂喻,如果一致口四,在測試結(jié)果結(jié)果報告中秦陋,添加一個Passed的結(jié)果步驟驳概,
否則,添加一個Failed的結(jié)果步驟
三、檢查點的類型
1.標準檢查點:對象的屬性值
2.位圖檢查點:把AUT的某個區(qū)域捕獲成位圖待榔,對位圖進行檢查
3.文本檢查點:檢查文本信息是否正確實現(xiàn)
文本區(qū)域檢查點:檢查文本信息有沒有在指定的區(qū)域顯示
4.表檢查點:檢查表格的單元格內(nèi)容
5.圖像檢查點:檢查圖像的屬性
6.數(shù)據(jù)庫檢查點、頁面檢查點腌闯、XML檢查點姿骏、可訪問性檢查點
3.1標準檢查點
1.作用:檢查對象的屬性值
2.錄制時插入檢查點:
(1)確定檢查的對象
(2)確定檢查對象的屬性名稱斤彼,使用Object Spy工具(小人頭工具)
(3)確定插入檢查點的位置(哪個步驟之后)
(4)開始錄制,錄制過程中插入檢查點嘲玫,具體步驟如下:
a.到(3)的步驟之后去团,點擊菜單欄中Insert(插入)\CheckPoint(檢查點)\Standard CheckPoint(標準檢查點)
b.點擊要操作的對象
c.確定對象
d.在CheckPoint Property(檢查點屬性)對話框中勾選(2)確定要檢查的屬性土陪,點擊屬性鬼雀,Config Value(值設(shè)置)扮超,選擇Constant(常量)出刷,輸入預(yù)期數(shù)據(jù)結(jié)果馁龟,確定
練習(xí)1:Flight系統(tǒng),登錄后却音,檢查Flights按鈕為不可用系瓢,輸入訂票信息后夷陋,檢查Flights按鈕可用
3.錄制結(jié)束后插入檢查點
(1)關(guān)鍵字視圖中插入檢查點
限制:檢查對象必須屬于當前的某個操作步驟
步驟:選中檢查對象的操作步驟,Insert\CheckPoint\Standard Checkpoint
注意:檢查點插入的位置藐窄,當前步驟之前\后
(2)通過ActiveScreen插入檢查點
限制:檢查對象必須在ActiveScreen中存在
步驟:相應(yīng)對象上右鍵\Insert Standard Checkpoint
注意:檢查點插入的位置,當前步驟之前\后
3.2位圖檢查點
1.位圖檢查點:主要用于檢查頁面UI是否和原來一致
2.步驟:
(1)確定檢查的對象
(2)確定檢查點插入的位置
(3)錄制過程中撤缴,
a.Insert\CheckPoint\BitMap CheckPoint
b.點擊要檢查的對象
c.在(CheckPoint Property)檢查點屬性對話框中腹泌,
確定檢查的范圍:整張圖凉袱,區(qū)域檢查
補充:運行結(jié)果報告中想任何時候都能看到 檢查點有預(yù)期圖片和實際圖片,設(shè)置辦法
-----Tools/Options/Run-ScreenCapture--勾選Save still image....選擇always
注意:如果檢查的位圖不是方形钟鸵,只能選擇檢查區(qū)域(而不能選擇檢查整張圖)棺耍,因為种樱,如果位圖檢查點只能 檢查方形的區(qū)域,
如果檢查的圖片不是方形圖嫩挤,需要選擇指定區(qū)域來檢查Check only selected area(檢查指定區(qū)域)
如果檢查對象非方形區(qū)域,需要勾選部分區(qū)域進行檢查以现,不能檢查整張圖
練習(xí)2:使用位圖檢查點檢查Flight4a系統(tǒng)登錄頁面的圖片是否正確邑遏,
登錄后记盒,再檢查主頁面的圖片是否正確蹂午,打開打開訂單頁面,再檢查打開訂單頁面的圖片顯示是否正確
練習(xí)3:Flight3a,使用位圖檢查點巷疼,檢查登錄后的訂票主頁面的Window嚼沿,
回放,再切換被測系統(tǒng)為Flight4a,回放
3.3文本檢查點
作用:檢查指定文本是否出現(xiàn)
步驟:
(1)確定插入檢查點的位置(步驟位置)
(2)確定檢查的文本內(nèi)容
(3)錄制過程中瓷患,Insert\CheckPoint\Text Checkpoint
(4)回放骡尽,查看結(jié)果報告
文本區(qū)域檢查點
作用:檢查在指定區(qū)域內(nèi)是否顯示指定文本
Insert\CheckPoint\Text Area Checkpoint
文本檢查點和文本區(qū)域檢查點的區(qū)別:
(1)檢查的范圍不同:文本檢查點檢查對象的文本內(nèi)容,
文本區(qū)域檢查點檢查在指定區(qū)域內(nèi)的文本內(nèi)容
(2)檢查的對象不同:文本檢查點檢查文本本身對象擅编,一般為Static對象攀细,
文本區(qū)域檢查點文本區(qū)域的對象,一般為Static對象的父對象
練習(xí)4:Flight登錄頁面爱态,輸入AgentName少于4位的提示
練習(xí)5:Flight打開訂單谭贪,輸入不存在的訂單號的提示
四、檢查點失敗的原因
測試代碼的問題
(1)檢查點插入的位置
(2)Timeout時間
File/Settings--Run--Object synchronization xxxxx secondes;默認20秒
AUT的問題
(3)需求變動
(4)bug
(二)DataTable
1锦担、為什么需要做DataTable參數(shù)化
相同的業(yè)務(wù)流程俭识,不同的只是測試數(shù)據(jù)不同
實現(xiàn)業(yè)務(wù)和數(shù)據(jù)的分離,方便維護代碼和數(shù)據(jù)
2洞渔、什么是DataTable參數(shù)化
用DataTable的一組數(shù)據(jù)表代替腳本中(Value列中)的數(shù)據(jù)常量衷快,讓測試腳本重復(fù)執(zhí)行,
每執(zhí)行一次宝冕,從Datatable中取一行數(shù)據(jù),重復(fù)的次數(shù)由數(shù)據(jù)表中的數(shù)據(jù)行數(shù)決定,
每進行一次重復(fù)執(zhí)行腳本代碼,稱為一個“反復(fù)”,或者“迭代”弓千,英文Iteration
3捌显、DataTable參數(shù)化的步驟(重點)
1.確定要參數(shù)化的數(shù)據(jù)
2.錄制測試步驟善镰,只錄制一組數(shù)據(jù)的步驟
3.做參數(shù)化熏兄,兩種方式
(1)先定位要參數(shù)化的數(shù)據(jù),再創(chuàng)建DataTable參數(shù)。具體如下:
a.點擊要參數(shù)化的數(shù)據(jù)的Value列的<#>按鈕
b.在Value Configuration options(值配置選項)對話框中查邢,
選擇“Parameter”(參數(shù))單選按鈕裙盾,默認參數(shù)類型DataTable(數(shù)據(jù)表)
c.在Name中輸入?yún)?shù)名稱,
Location in DataTable(在DataTable中的位置)
用默認Global Sheet(全局表單)徘熔,OK
(2)先創(chuàng)建DataTable參數(shù)山孔,再定位參數(shù)化的數(shù)據(jù)
具體如下:
a.在DataTable的Global表單中串前,點擊某一列的標題局装,輸入?yún)?shù)名稱,OK
b.點擊要參數(shù)化的數(shù)據(jù)的Value列的<#>按鈕
c.選擇“Parameter”(參數(shù))單選按鈕
c.在Name中選擇在a步驟中創(chuàng)建的參數(shù)名稱,OK
4.在DataTable中準備數(shù)據(jù)
5.設(shè)置循環(huán)次數(shù):File\Settings\Run\DataTable Iterations
(1)Run one iteration only(只運行一次)
(2)Run on all rows(運行全部行)
(3)Run from row [m] to [n](從第m行到第n行運行)
4.DataTable數(shù)據(jù)的操作
(1)修改參數(shù)名稱:雙擊參數(shù)名稱匆骗,修改
(2)增加1個新的參數(shù):雙擊空白列的列頭
(3)如果數(shù)據(jù)是以0開頭,前面加上單引號(‘)半角的單引號
(4)刪除參數(shù):參數(shù)名稱右鍵筋量,選擇Edit\Delete
(5)刪除一行數(shù)據(jù):選中行锈津,右鍵错览,選擇Edit\Delete
(6)移動列:右鍵\Edit\Cut,右鍵\Edit\Paste,不要的列上右鍵\Edit\Delete
5煌往、DataTable參數(shù)化注意點(重點)
1.在代碼的開始和結(jié)束携冤,被測系統(tǒng)要處于相同的狀態(tài)
2.對一個數(shù)據(jù)做參數(shù)化扣猫,受影響的其他數(shù)據(jù)也要做參數(shù)化
練習(xí)6:手動啟動的方式錄制Flight系統(tǒng)登錄和退出的代碼,把AgentName做參數(shù)化时鸵,準備兩行數(shù)據(jù)
練習(xí)7:自動啟動的方式Mtours系統(tǒng)登錄退出的代碼半沽,把用戶名和密碼做參數(shù)化嗓化,準備3行數(shù)據(jù)
練習(xí)8:Flight系統(tǒng)棠涮,錄制登錄-訂票-退出,把訂票信息的起飛日期刺覆,起飛城市严肪,到達城市做DataTable參數(shù)化
提示:以0開頭的數(shù)據(jù),前面加半角單引號
注意:刪除數(shù)據(jù)行谦屑,行點擊右鍵\Edit\Delete
6驳糯、檢查點的參數(shù)化
步驟:
(1)參照插入一般檢查點的步驟
(2)在CheckPoint Properties(檢查點屬性)對話框中,不選擇Constant(常量)氢橙,選擇Parameter(參數(shù))
(3)指定一個DataTable中的參數(shù)
練習(xí)4:
a.兩位數(shù)加法器酝枢,自動啟動,
b.對兩個加數(shù)做Action參數(shù)化
c.對計算結(jié)果做標準檢查點
7悍手、DataTable中Sheet表單的分類
Global Sheet
1.是針對整個腳本的
2.如果指定Global Sheet中的數(shù)據(jù)作為參數(shù)化數(shù)據(jù)帘睦,那麼將應(yīng)用到整個腳本,即整個腳本執(zhí)行多次反復(fù)
Action Sheet
1.是針對1個Action的坦康,創(chuàng)建1個Action竣付,在DataTable中就會增加1個相應(yīng)的sheet
2.如果指定Action Sheet中的數(shù)據(jù)作為參數(shù)化數(shù)據(jù),則只有相應(yīng)的Action執(zhí)行多次反復(fù)
(三)建立輸出值(OutputValue)
一滞欠、建立輸出值
1.為什么建立輸出值
關(guān)心運行時系統(tǒng)實際運行數(shù)據(jù)古胆,這些數(shù)據(jù)用于后續(xù)的業(yè)務(wù)流程
2.什么是輸出值\輸出值類型
把系統(tǒng)實際運行時數(shù)據(jù)輸出,叫做建立輸出值
輸出值類型:
標準輸出值筛璧、
文本輸出值逸绎、
數(shù)據(jù)庫輸出值惹恃、
XML輸出值
3.建立 標準 輸出值
(1)作用:輸出運行時被測系統(tǒng)中的對象的實際屬性值
(2)步驟:
a.確定操作的對象
b.確定輸出對象的屬性名稱
c.確定建立輸出值的位置
d.錄制代碼過程中,
Insert\Output Value(輸出值)\Standard output value(標準輸出值)
e.在彈出的OutputValue Properties(輸出值屬性)界面桶良,選擇相應(yīng)屬性
f.選擇輸出值輸出的位置座舍,DataTable...OK
g.運行代碼,到測試結(jié)果報告的Run-time DataTable(運行時數(shù)據(jù)表)中查看輸出值
4.建立 文本/文本區(qū)域 輸出值
練習(xí)1:Flight陨帆,訂票后輸出新訂單號到數(shù)據(jù)表
其他補充知識點:
1.wait 3 ----等待3秒
在需要等待的步驟后曲秉,添加語句wait
如:Flight登錄之后,Insert Order點擊之后
(三)補錄
補充知識點:
1.代碼的補錄:增加一系列步驟
步驟:
(1)確認補錄的位置和內(nèi)容
(2)把被測系統(tǒng)
改為手動啟動
(打開代碼疲牵,Automation\Record and Run settings(錄制和運行設(shè)置)承二,選擇手動啟動的方式)
關(guān)鍵字視圖中,定位到要補錄代碼的前一個步驟
(3)光標停留在補錄代碼的位置
(4)被測系統(tǒng)打開纲爸,
停留在要補錄的狀態(tài)
(5)點擊“Record”開始補錄步驟
(6)點擊“Stop”結(jié)束補錄
(7)修改啟動方式為原來的啟動方式
(打開代碼亥鸠,Automation\Record and Run settings(錄制和運行設(shè)置),選擇自動啟動的方式)
注意:補錄的步驟開始和結(jié)束和現(xiàn)有步驟銜接正常
2.代碼的補錄:增加一系列步驟
步驟:
(1)確認補錄的位置和內(nèi)容
(2)把被測系統(tǒng)改為手動啟動
(3)光標停留在補錄代碼的位置
(4)被測系統(tǒng)打開识啦,停留在要補錄的狀態(tài)
(5)點擊“Record”開始補錄步驟
(6)點擊“Stop”結(jié)束補錄
(7)修改啟動方式為原來的啟動方式
注意:補錄的步驟開始和結(jié)束和現(xiàn)有步驟銜接正常
2.參數(shù)化時可以選擇已有的參數(shù)實現(xiàn)數(shù)據(jù)的復(fù)用
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者