QTP10-02檢查點-DataTable-輸出值

(一)檢查點(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)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容