摘 要:QTP作為企業(yè)級(jí)功能測(cè)試工具,其參數(shù)化功能對(duì)于實(shí)現(xiàn)重復(fù)性大數(shù)據(jù)量測(cè)試有人工測(cè)試不可比擬的優(yōu)勢(shì)。本文探討了QTP參數(shù)化功能的若干問題,并結(jié)合實(shí)際案例進(jìn)行了深入研究。
關(guān)鍵詞:自動(dòng)化測(cè)試;參數(shù)化
中圖分類號(hào):TP311.53
1 自動(dòng)化測(cè)試的目的
隨著自動(dòng)化測(cè)試工具的發(fā)展,人們?cè)絹碓揭庾R(shí)到自動(dòng)化測(cè)試工具對(duì)于軟件測(cè)試的重大作用。相對(duì)于人工測(cè)試,自動(dòng)化測(cè)試具有非常顯著的優(yōu)勢(shì)。自動(dòng)化測(cè)試非常快速,腳本在計(jì)算機(jī)上執(zhí)行的速度遠(yuǎn)遠(yuǎn)快于手工測(cè)試執(zhí)行速度。而且對(duì)于重復(fù)性較高的動(dòng)作,自動(dòng)化測(cè)試能保證每次運(yùn)行時(shí)都執(zhí)行相同的操作,消除人為錯(cuò)誤。自動(dòng)化測(cè)試可以對(duì)被測(cè)試系統(tǒng)執(zhí)行相同的操作,具有可重復(fù)性;可以使用測(cè)試腳本重復(fù)的測(cè)試應(yīng)用程序的不同版本。對(duì)于用戶而言,只有經(jīng)過大量測(cè)試案例測(cè)試過的版本才是可靠的,而只有使用自動(dòng)測(cè)試才能夠保證在一段時(shí)間內(nèi)完成大量的測(cè)試用例。
2 QTP的運(yùn)行機(jī)制
Mercury QuickTest Professional是企業(yè)級(jí)自動(dòng)化測(cè)試工具,目前經(jīng)被惠普公司收購(gòu),正式名稱為HP QuickTest Professional Software,最新版本為HP QuickTest Professional 11。HP QuickTest Professional針對(duì)功能測(cè)試和回歸測(cè)試自動(dòng)化提供業(yè)界最佳的解決方案,適用于軟件主要應(yīng)用環(huán)境的功能測(cè)試和回歸測(cè)試的自動(dòng)化。HP QuickTest Professional(以下簡(jiǎn)稱QTP)采用關(guān)鍵字驅(qū)動(dòng)的理念來簡(jiǎn)化對(duì)測(cè)試用例的創(chuàng)建和維護(hù)。它讓用戶可以直接錄制屏幕上的操作流程,自動(dòng)生成功能測(cè)試或回歸測(cè)試腳本。專業(yè)的測(cè)試者也可以通過其提供的內(nèi)置腳本和調(diào)試環(huán)境,取得對(duì)測(cè)試對(duì)象屬性的完全控制。
QTP進(jìn)行自動(dòng)化測(cè)試的流程一般為制訂測(cè)試計(jì)劃—?jiǎng)?chuàng)建測(cè)試腳本—增強(qiáng)測(cè)試腳本—執(zhí)行測(cè)試—分析測(cè)試結(jié)果
3 QTP中的參數(shù)化作用
QTP提供非常強(qiáng)大的參數(shù)化功能,此項(xiàng)功能能讓我們輕松的修改、強(qiáng)化腳本,將需要反復(fù)執(zhí)行同種功能的數(shù)據(jù)集成在DataTable中,通過調(diào)用執(zhí)行同一段腳本就能反復(fù)自動(dòng)執(zhí)行這些數(shù)據(jù)。
4 參數(shù)化的應(yīng)用問題
4.1 對(duì)象參數(shù)化
假定有某教務(wù)管理信息系統(tǒng),針對(duì)數(shù)萬學(xué)生和教師及工作人員提供日常的教學(xué)管理服務(wù)工作。針對(duì)這樣的大型系統(tǒng),系統(tǒng)會(huì)分配出去數(shù)萬個(gè)賬號(hào)和密碼。如果要對(duì)目前所有的賬號(hào)和密碼以及其對(duì)應(yīng)的身份功能來檢測(cè)其正確性,這無疑是一項(xiàng)巨大的任務(wù)。對(duì)于人工測(cè)試,即使每秒鐘測(cè)試一項(xiàng)數(shù)據(jù),也需要不間斷的工作五六個(gè)小時(shí),而這樣繁瑣的重復(fù)性勞動(dòng)還不允許出現(xiàn)一點(diǎn)人為的輸入誤差。顯而易見,這樣的測(cè)試工作即給測(cè)試人員帶來了負(fù)擔(dān),也為人為引入測(cè)試錯(cuò)誤帶來了風(fēng)險(xiǎn)。為解決這一問題,我們可以采用自動(dòng)化測(cè)試工具,利用自動(dòng)化測(cè)試工具機(jī)械執(zhí)行不會(huì)犯錯(cuò)以及不會(huì)疲勞的特性,完成此類重復(fù)性勞動(dòng)。
首先,我們可以針對(duì)登陸過程錄制一段腳本。錄得的腳本如下所示:
在這段腳本中,我們需要重復(fù)不斷的輸入不同的用戶名、密碼以及對(duì)應(yīng)的身份選擇來測(cè)試該項(xiàng)數(shù)據(jù)的正確性,在關(guān)鍵字試圖中我們可以看到,也就是TextBox1、TextBox2和ButtonList1這三個(gè)對(duì)象及其屬性值。在關(guān)鍵字試圖中Value一欄中,我們點(diǎn)擊TextBox1可以看到Value Configuration Option功能的按鈕(如圖1所示)。
在該功能對(duì)話框中我們看到Parameter參數(shù)化下的選項(xiàng),分別是DataTable數(shù)據(jù)表、Enviroment環(huán)境參數(shù)和Random Number隨機(jī)數(shù)。
因?yàn)闇y(cè)試數(shù)據(jù)量龐大,我們應(yīng)該選DataTable數(shù)據(jù)表。而DataTable數(shù)據(jù)表又有Global Sheet和Current action Sheet(local)的區(qū)別。Global Sheet下的數(shù)據(jù)屬于全局變量,在此測(cè)試工程下的所有action皆可調(diào)用,是受data table iterations控制的,而local sheet是局部變量,并不受data table iterations控制,無論有多少數(shù)據(jù),只運(yùn)行一次,并且只在當(dāng)前的Action下有效。
對(duì)于待參數(shù)化的三個(gè)對(duì)象我們依次進(jìn)行參數(shù)化選擇,并為參數(shù)設(shè)定相應(yīng)的容易理解的名字,設(shè)置完畢后對(duì)應(yīng)的專家視圖腳本如下:
4.2 屬性參數(shù)化
5 結(jié)束語
QTP的功能非常強(qiáng)大也非常復(fù)雜,在應(yīng)用的過程中提供了多種解決問題的方法。雖然腳本強(qiáng)化和描述性表編程是QTP的特點(diǎn),但是在實(shí)際的應(yīng)用中我們也可以找到很多簡(jiǎn)單的操作方法。本文只是簡(jiǎn)單的分析了QTP中強(qiáng)大的參數(shù)化功能,其參數(shù)化的實(shí)現(xiàn)還有許多方法,可以留待讀者繼續(xù)思考。
參考文獻(xiàn):
[1]田艷琴.QTP從實(shí)踐到精通.北京:電子工業(yè)出版社,2010.
[2]余杰,趙旭斌.精通QTP—自動(dòng)化測(cè)試技術(shù)領(lǐng)航.北京:人民郵電出版社,2013.
作者簡(jiǎn)介:李月(1979.12-),女,湖北荊門人,講師,研究方向:軟件測(cè)試、軟件工程;周江(1978.05-),女,湖南瀏陽人,講師,軟件系副主任,研究方向:軟件工程,web開發(fā)技術(shù)。
作者單位:廣東交通職業(yè)技術(shù)學(xué)院,廣州 510650