细品慢酌QuickTest关键视图(5)脚本调试
調試查看器
????當測試腳本運行過程中在運行至斷點處停止,或者當一個操作步驟執行失敗時,可以通過選擇“調試”選項來調試腳本。選擇菜單欄中【View】—【Debug?Viewer】調用調試查看器,通過調試查看器查看、設置或修改測試或組件中的對象及變量的值(值只限于當前調試過程中有效)。
-
查看(Watch)選項卡
????使用“查看”選項卡,可查看已在查看列表中輸入的任何變量或?VBScript?對象的當前值。“查看”選項卡下,將對象或變量輸入到“Name”列中,按回車鍵來查看“Value”列中的當前值。如果對象或變量的值在腳本后續運行時發生了變化,則“查看”選項卡中的值會一并變化。當測試腳本在斷點暫停時,還可以手動設置更改變量的值。
-
變量(Variables)選項卡
????使用“變量”選項卡可查看腳本中所有變量的當前值。
-
命令(Command)選項卡
????通過“命令”選項卡,可執行一行腳本,進行查看、設置或修改測試腳本中變量或?VBScript?對象的當前值。
????以場景1創建簡單的測試腳本,學習調試查看器的使用方法。
????1.?錄制測試場景1,并將測試腳本保存為單步調試(Flight)。
????2.?如圖所示,在場景1測試腳本的關鍵字視圖中,新建一操作行,其中Item列,通過下拉設定為Statement(聲明),Value列設置為Dim?UserName。再新建一操作行,其中Item列,通過下拉設定為Statement(聲明),Value列設置為UserName?=?"mercury"。然后將新建的兩行操作,拖拽到操作前最前面。
????3.?如圖所示,在關鍵視圖中的第4行(AgentName),將當前操作步驟設定為斷點。
????4.?如圖所示,運行測試腳本,測試腳本運行至斷點暫停,菜單欄中選擇【View】—【Debug?Viewer】,打開調試查看器。
????5.?如圖所示,點擊調試查看器中的Watch選項卡,并在Name一列鍵入username(第1步中定義的變量名),同時按下回車鍵,可觀察到username的值變為了mercury。
????6.?如圖所示,修改username的值,使其變為MER。按F11運行單步執行,可觀察到被測應用程序(Flight登錄框)中,被測對象Agent?Name對象輸入的值也相應的變為MER。
????7.?如圖所示,停止測試腳本運行,刪除查看(Watch)選線卡中的變量。然后再次回放測試腳本(測試腳本仍在斷點出停止),點擊“Variables”選項卡,可以看到“Variables”中取到了username變量的值。
????8.?如圖所示,第6步腳本回放過程運行在斷點處停止后,點擊“Command”選項卡,在命令選項卡內輸入username?=?“MER”,并按下回車。按F11運行單步執行,觀察到被測應用程序(Flight登錄框)中,被測對象Agent?Name對象輸入的值也相應的變為MER。結果與在查看(Watch)選項卡一樣。
錯誤信息
????如圖所示,在開展自動化測試過程中,QuickTest調試\運行測試腳本過程中經常遇到彈出錯誤信息的對話框,通過彈出的錯誤信息對話框,可以獲得哪些信息呢?那又該對測試腳本執行哪些維護呢?
????1.?停止(stop)—?停止運行測試腳本。
????如果?QuickTest?配置為在運行后顯示測試結果,在測試腳本停止運行后將顯示測試結果信息。
????2.?重試(Retry)—?嘗試再次執行當前操作步驟。
????如果QuickTest對某操作步驟重新運行后,運行通過,則后續操作步驟將繼續執行。
????3.?跳過(Skip)—?跳過引發錯誤的操作步驟。
????QuickTest跳過引發錯誤的步驟,然后從下一操作步驟繼續運行。
????4.?調試(Debug)—?暫停腳本,對測試腳本進行調試。
????暫停測試腳本運行,點擊Debug進入調試模式,對測試腳本進行調試。在調試模式下可執行單步調試、單步執行等任何調試操作。在調試結束之后,可從測試腳本停止的那一步開始繼續運行會話,也可以使用單步執行命令來控制測試腳本的其余部分。
????5.?幫助(Help)—?打開幫助文檔
????對于顯示的錯誤消息,打開?QuickTest相關的問題幫助。
發送測試報告
????前面提到當某個測試對象不存在時,可以使用條件語句控制測試流程,讓腳本停止運行。如果腳本停止運行后,如何在測試結果中確定是由于那個對象的不存在而停止腳本運行的呢?可以將測試腳本停止運行的原因,寫入測試結果中,在測試結果中查看腳本運行失敗的原因,能夠為后續腳本的維護提供幫助。而此項技術稱為發送報告(Report)。測試報告將大大提高確定問題解決問題的效率。
????通過關鍵字視圖或專家視圖中都可設置測試報告(Report)的發送。本章在關鍵字視圖中,以場景1錄制的測試腳本為例講解消息發送(測試腳本存放于本章腳本目錄下——發送消息(Flight))。
????1.?錄制場景1并保存,將場景1測試腳本命名為發送消息(Flight)。
????2.?如圖所示,在場景1(發送消息(Flight)腳本)測試腳本關鍵字視圖中,點擊【Insert】—【Conditional?Statement】或右鍵選擇【Insert?Step】—【Conditional?Statement】IF…..Then條件語句,并將Agent?Name作為條件。
????IF條件操作所在操作行,Item列下拉列表中選擇Agent?Name對象,Operation列設置為Exist,Value列設置為1(測試腳本中檢測Agent?Name是否存在,檢測時間為1秒)。
????3.?如圖所示,在關鍵字視圖中,右擊第1步插入的IF操作行,點擊【Insert】—【Conditional?Statement】或右鍵選擇【Insert?Step】—【Conditional?Statement】選擇Else。
????4.?如圖所示,關鍵字視圖中插入使用步驟生成器插入報告(Report)。步驟生成器對話框中,將報告操作(Operation)選擇為ReportEvent,狀態(EventStatus)選擇為micFail。
????5.?如圖所示,拖拽添加報告操作行至Else操作行下。
????6.?如圖所示,進入對象庫,將Agent?Name對象的attached?text屬性值由Agent?Name修改為Name(修改后腳本回放將失敗)。運行測試腳本,可在測試結果中觀察到失敗的原因。
????消息(Report)的狀態列表除了micFail,還有其他狀態。如下表所示。
消息(Report)的狀態表
| 狀態 | 描述 |
| 通過(micPass) | 該步驟通過后,將設定消息發送到測試報告中。 |
| 失敗(micFail) | 該步驟執行失敗后,將設定消息發送到測試報告中。 |
| 完成(micDone) | 將設定消息發送到測試報告中,而不影響步驟的通過/失敗狀態。 |
| 警告(micWarining) | 發送步驟的警告狀態,但不會導致測試腳本停止運行。 |
本文轉自hblxp32151CTO博客,原文鏈接:http://blog.51cto.com/starpoint/1287743,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的细品慢酌QuickTest关键视图(5)脚本调试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 独家 | 手把手教你用Python 3创
- 下一篇: 非常规数组转换问题