淺談自動化測試工具 QTP腳本的重用
QTP全稱Mercury QuickTest Professional,是一款自動化測試工具,用于軟件的功能測試和回歸測試。它能夠錄制用戶行為,并自動進行重放、捕獲及驗證,可以代替測試人員去完成那些重復性高并且枯燥的工作。
錄制用戶行為,也就是錄制測試腳本,所有錄制的用戶行為都能夠追蹤到腳本代碼。腳本的重用作為測試自動化的一個方面,是指將一些通用的、固定的用戶行為從測試腳本中提取出來,作為獨立部分,在其它腳本中加以引用。這樣,就避免了一些通用行為的重復錄制,有利于測試框架的搭建。
本文將簡單介紹Mercury QuickTest Professional 8.2中腳本的重用方法。
QTP中的Action
QTP中腳本可重用的最小單元是Action,錄制的用戶行為集合將以腳本代碼的形式存放在Action中。當你錄制腳本的時候,只有一個Action,錄制的腳本也全部在這個Action中,可以將這個Action進行切割,提取通用腳本并模塊化。
QTP提供四種操作Action的方式:
1、New Action:新建一個Action,可以在其中錄制、編輯腳本;
2、 Split Action:將一個Aciton分割成兩個Action;
3、 Copy of Action:復制一個Action,即創建一個副本。兩個Action相互獨立,修改其中任何一個,不會影響另一個;
4、 Call to Action:如同編程語言中的函數調用,測試腳本中也可以引用或調用一個可重用的Aciton,這個Action可以是任一測試腳本文件中聲明為Reusable(可重用)的Action。注意:不允許在引用端修改被調用的Action,只能在原腳本文件中修改。
腳本重用示例
Call to Action是QTP重用腳本的核心,下面簡單介紹一個使用這種方式來重用腳本的例子。
測試一個簡單的B/S結構的辦公自動化系統的常用功能。
大體流程為:登錄系統―業務處理―退出系統。
其中登錄系統和退出系統屬于可重用性比較強的功能模塊,如果系統允許同一用戶同時在多臺計算機上登錄的話,可以單獨建立一個腳本文件,將登錄和退出錄制成兩個可重用的Action,以便重用。業務處理流程就比較多樣了,它包括文稿審批、個人日志管理、請假申請等功能模塊。
測試一個功能模塊的完整用戶行為包括登錄系統,執行特定的業務流程,執行完畢后退出系統。可使用一個測試腳本文件測試一個特定的功能模塊,系統登錄和退出模塊可以使用Call to Action方式進行重用,不需要在每個模塊的測試中都進行錄制。
具體步驟如下:
步驟1:錄制系統登錄和退出腳本。
新建login_out腳本文件,在Record and Run Setting選項卡中,選擇IE方式并輸入辦公自動化系統的網址,點擊OK進行錄制。QTP將自動打開辦公自動化系統的網頁,輸入用戶名和密碼登錄系統,再退出系統。然后結束錄制,QTP將自動生成腳本。
步驟2:使用Split Action方式將login_out腳本中的Action分割成login和logout兩個Action。
login是系統登錄部分的腳本,logout是退出部分的腳本。具體的分割步驟本文不作說明,讀者可參閱QTP的使用手冊。
步驟3:將login和logout設定為可重用。
打開兩個Action的Action Properties對話框,點選Reusable action選項,點擊OK后,兩個Action便可以被其它腳本文件引用了。
步驟4:錄制業務處理腳本。
按照步驟1新建process腳本文件進行任一功能模塊的測試腳本錄制。在登錄系統進入主界面后,按下工具列中的Record按鈕,開始錄制相關的業務操作,完成后再按下Stop按鈕結束錄制,并將Action命名為processing。
這樣,process文件包含一個Action名為processing,其中錄制了一段系統業務處理流程的測試腳本,但并未包含用戶的登錄和退出行為,不能直接自動執行,需要手工登錄系統進入主界面后,才能執行。
步驟5:調用login和logout,完善process腳本。
打開process腳本,在菜單中選擇Insert―Call to Existing Action選項,打開Select Action對話框,選擇login_out腳本,選擇login,點擊OK進行Action的引用。用同樣的方法應用logout。注意,調整三個Action的順序為login―processing―logout。
完成以上五個步驟后,可以執行process腳本進行調試。
小結
腳本重用作為測試自動化的一個方面,縮短了腳本的編制時間、利于腳本的架構與維護。在腳本文件中直接調用可重用的腳本,避免了重復錄制,節省時間。
自動化測試人員可以把一個Action中的用戶行為分割成很多Action,從中提取出重用性高的設置為Reusable action保存在單獨的文件中,并利用這些Reusable action來靈活地架構自己的測試腳本。當一個可重用的腳本需要修改時,僅需在它的源文件中進行改動,調用它的腳本都會隨之改動,方便了腳本的維護。
【編輯推薦】