QTP與QC的完美結(jié)合實(shí)現(xiàn)自動(dòng)化測(cè)試框架-業(yè)務(wù)組件測(cè)試_第1頁(yè)
QTP與QC的完美結(jié)合實(shí)現(xiàn)自動(dòng)化測(cè)試框架-業(yè)務(wù)組件測(cè)試_第2頁(yè)
QTP與QC的完美結(jié)合實(shí)現(xiàn)自動(dòng)化測(cè)試框架-業(yè)務(wù)組件測(cè)試_第3頁(yè)
QTP與QC的完美結(jié)合實(shí)現(xiàn)自動(dòng)化測(cè)試框架-業(yè)務(wù)組件測(cè)試_第4頁(yè)
QTP與QC的完美結(jié)合實(shí)現(xiàn)自動(dòng)化測(cè)試框架-業(yè)務(wù)組件測(cè)試_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、QTP與QC的完美結(jié)合實(shí)現(xiàn)自動(dòng)化測(cè)試框架-業(yè)務(wù)組件測(cè)試做功能自動(dòng)化測(cè)試都會(huì)不約而同的遇到一個(gè)比較棘手的問(wèn)題-測(cè)試框架的搭建。這也是直接影響功能自動(dòng)化測(cè)試成功與否的關(guān)鍵??蚣茏龅暮每梢允箿y(cè)試事半功倍,反之輕則很難看到工作的成果重則會(huì)使整個(gè)測(cè)試失敗。目前網(wǎng)上有很多關(guān)于測(cè)試框架的討論,其中也有成型的測(cè)試框架,其中有很多好的思想在里邊,很值得借鑒。但今天要討論的不是 網(wǎng)上已有的,而是HP已經(jīng)為我們?cè)O(shè)計(jì)好的一個(gè)測(cè)試體系,業(yè)務(wù)組件測(cè)試。他是利用QTP與QC的完美結(jié)合組成的一個(gè)體系架構(gòu)。它可以輕易實(shí)現(xiàn)目前比較流行的三層測(cè)試架構(gòu):腳本層,業(yè)務(wù)層,數(shù)據(jù)層相分離,為開(kāi)展功能自動(dòng)化測(cè)試提供一個(gè)高效、穩(wěn)定、容易的測(cè)試

2、實(shí)現(xiàn)。一.概述1. 1業(yè)務(wù)組件(Bussiness Process Testing )簡(jiǎn)介業(yè)務(wù)組件是組成流程測(cè)試的基本單元,組合不同的業(yè)務(wù)組件可以實(shí)現(xiàn)不同的業(yè)務(wù)流程測(cè)試。如將fligt系統(tǒng)的登錄最為一個(gè)組件,選擇航班最為一個(gè)組件等。這樣可以實(shí)現(xiàn)組件的復(fù)用,提高開(kāi)發(fā)效率。1 . 2 Bussiness Process Testing的優(yōu)點(diǎn)1)相關(guān)業(yè)務(wù)人員可以在沒(méi)有腳本的環(huán)境下組合業(yè)務(wù)組件,實(shí)現(xiàn)業(yè)務(wù)流程。2)對(duì)業(yè)務(wù)人員的編程能力沒(méi)有要求,業(yè)務(wù)人員只需了解系統(tǒng)的業(yè)務(wù)流程,不用關(guān)心具體的腳本實(shí)現(xiàn)。這一點(diǎn)也實(shí)現(xiàn)了業(yè)務(wù)層和腳本層的分離。3)一旦某個(gè)組件開(kāi)發(fā)完畢,即可在不同的流程中使用該組件,實(shí)現(xiàn)高可復(fù)用性

3、,從而加快業(yè)務(wù)流程測(cè)試的速度。4)明確的角色分工,業(yè)務(wù)人員負(fù)責(zé)流程的開(kāi)發(fā)、組織;QTP工程師負(fù)責(zé)腳本的開(kāi)發(fā)、 維護(hù)以及相應(yīng)函數(shù)庫(kù)的開(kāi)發(fā)、 維護(hù)。5)因?yàn)閷?shí)現(xiàn)了腳本的復(fù)用,提高了自動(dòng)化開(kāi)發(fā)的效率,無(wú)形中就降低了測(cè)試過(guò)程中維護(hù)的時(shí)間和成本。1. 3 Bussiness Process Testing的簡(jiǎn)易流程如圖所示,整個(gè)過(guò)程分為2條線(xiàn):第一個(gè)是由業(yè)務(wù)測(cè)試人員劃分組件并組合不同的組件實(shí)現(xiàn)不同的流程測(cè)試;其次QTP專(zhuān)家負(fù)責(zé)組件的腳本具體實(shí)現(xiàn)并負(fù)責(zé)調(diào)試成功,上傳到QC供業(yè)務(wù)測(cè)試人員調(diào)用。注:測(cè)試數(shù)據(jù)的組織后邊介紹,以便實(shí)現(xiàn)三層的測(cè)試架構(gòu);此過(guò)程需要QC有Bussiness Process Testin

4、g組件許可的支持,也就是需要單獨(dú)向HP購(gòu)買(mǎi)。下邊以QTP自帶的示例程序演示整個(gè)流程的開(kāi)發(fā)過(guò)程本次將系統(tǒng)劃分為:登錄;選擇航班并插入;打開(kāi)訂單;更新訂單;刪除訂單;注銷(xiāo)。這樣劃分僅為演示之用,不用在實(shí)際的測(cè)試之中。2 . 2組織業(yè)務(wù)測(cè)試流程本次只是用于演示,所以流程不會(huì)100%覆蓋,在實(shí)際的測(cè)試過(guò)程中要達(dá)到100%的流程覆蓋。本次測(cè)試流程如下:流程1:登錄-選擇航班并插入-注銷(xiāo)流程2:登錄-選擇航班并插入-更新訂單-注銷(xiāo)流程3:登錄-選擇航班并插入-更新訂單-刪除訂單-注銷(xiāo)流程4:登錄-打開(kāi)訂單-更新訂單-刪除訂單-注銷(xiāo)下邊需要根據(jù)劃分的組件來(lái)實(shí)現(xiàn)組件腳本的實(shí)現(xiàn)。2 . 3創(chuàng)建應(yīng)用程序區(qū)域在開(kāi)發(fā)

5、腳本之前首先要做的是要?jiǎng)?chuàng)建一個(gè)應(yīng)用程序區(qū)域。應(yīng)用程序區(qū)域提供創(chuàng)建業(yè)務(wù)組件所需的所有資源和設(shè)置,每個(gè)業(yè)務(wù)組建都居于一個(gè)應(yīng)用程序區(qū)域,并從這些應(yīng)用程 序區(qū)域集成這些資源和設(shè)置。在此創(chuàng)建一個(gè)名為訂票系統(tǒng)流程測(cè)試”的區(qū)域,如圖所示。創(chuàng)建過(guò)程:依次選擇:file New Function library。保存后自動(dòng)上傳至QC默認(rèn)目錄g)QuickTest Professional - (Application Areasll系統(tǒng)漳程測(cè)試:j 0e Edit J(tew nseft fiutoroton Besotrces Qebuj loots也也bdow知知Start Pge訂票系茨雀程溜試Other

6、The ad*n enWorrwib bled b&jw oonespond to the cwertjy baded ad出 gAl supgled Web bcowg.For informfibon on supported versions refei to the QuckTesl Fiofewiond ard/oc addn Readme Ifes.Clckto define addtbnal settings, $txh recoghzed kdbonf, recovery scenarios, nd add-in relied settings.1.點(diǎn)擊添加厘用程序3Ge

7、neralFinctbn LtracesAuthor: jfenggddLocation: |Appicatk:n Area加cription:打象系統(tǒng)疣程天狀廠Application Area SettingsApplications | Yeb | Recovery |ObjectRepositoriesKeywadsA$ooated ddd-n$:0 ActiveXVisual BasicWebAddtbnd Settirgs.The buan$ cwpwem can record andrironthe spedlied below V/indcwsaprfcabomJ Record

8、ard run on ary apjJcaton opened by QuckTesl在此也可以加載自己的函數(shù)庫(kù),對(duì)象庫(kù),恢復(fù)場(chǎng)景等,這樣以后創(chuàng)建的組建都可以共享該應(yīng)用程序區(qū)域的資源。同時(shí)也方便維護(hù),這也是一個(gè)優(yōu)點(diǎn)所在,例如一旦函數(shù)庫(kù)改 變?cè)诖藦男录虞d新的函數(shù)庫(kù)即可,不用在腳本理修改??傊@個(gè)應(yīng)用程序區(qū)域很重要,以后所有的腳本均是基于這個(gè)區(qū)域。應(yīng)用程序路徑一定要加載正確,否則錄制時(shí)不能生成腳 本。2 . 4創(chuàng)建腳本在創(chuàng)建腳本之前最好在QC中組織好目錄樹(shù),方便保存及調(diào)用。關(guān)于腳本的開(kāi)發(fā)過(guò)程,每個(gè)人、每個(gè)公司都有自己的方法。在此源代碼也沒(méi)法一一貼出。所以在此只列出輸 入?yún)?shù)和輸出參數(shù),方便后邊的參

9、數(shù)化以及數(shù)據(jù)組織。本次也采用最通用的方式即對(duì)象庫(kù)解決對(duì)象識(shí)別問(wèn)題。腳本的開(kāi)發(fā)規(guī)范以及參數(shù)命名也以我自己慣用方式。輸出參數(shù)名稱(chēng)說(shuō)明名稱(chēng)名稱(chēng)說(shuō)明用戶(hù)名密碼選擇航班并插入忸醐日期orderNo訂單號(hào)phnsFrotn起點(diǎn)phnelb終點(diǎn)一訂單名稱(chēng)一一tkketNiitn瞧數(shù)berth Bpe毗種類(lèi)打升訂單otdsiNo訂單號(hào)更痢訂單planeDita醐日期一一phntFrotn起點(diǎn)planelo繆點(diǎn)orderiine訂單名稱(chēng)tickftNum機(jī)票數(shù)一berthRpj能位種類(lèi)一冊(cè)吟訂單注銷(xiāo)輸入?yún)?shù)輸出參數(shù)名稱(chēng)說(shuō)明名稱(chēng)說(shuō)明登錄logName用戶(hù)名-一logPassW密碼-一選擇航班并插入planeDat

10、a航班日期orderNo訂單號(hào)planeFrom起點(diǎn)一-planeTo終點(diǎn)一一orderName訂單名稱(chēng)一一ticketNum機(jī)票數(shù)一一berthType艙位種類(lèi)一一打開(kāi)訂單orderNo訂單號(hào)一一更新訂單planeDate航班日期一一planeFrom起點(diǎn)一一planeTo終點(diǎn)一一orderName訂單名稱(chēng)一一ticketNum機(jī)票數(shù)一一berthType艙位種類(lèi)-刪除訂單-一一注銷(xiāo)一一一一注:g”為無(wú)相應(yīng)參數(shù)。在QTP中創(chuàng)建組件腳本有2中模式:Bussiness Component和Scripted Component。區(qū)別:Bussiness Component只能見(jiàn)關(guān)鍵字視圖,QC中亦

11、可見(jiàn)關(guān)鍵字視圖;Scripted Component可以看見(jiàn)專(zhuān)家視圖,在QC中腳本代碼不可見(jiàn)。一般創(chuàng)建后者,本次也是采用后者,方便編輯腳本,控制腳本結(jié)構(gòu)。注意:參數(shù)一定要合理設(shè)置并對(duì)代碼中的輸入項(xiàng)做參數(shù)化與參數(shù)關(guān)聯(lián),否則測(cè)試數(shù)據(jù)傳不到腳本,導(dǎo)致腳本運(yùn)行失敗。參數(shù)可以在QTP中創(chuàng)建,也可以在QC中創(chuàng)建,效果等同。腳本開(kāi)發(fā)完保存至QC,如圖:輸入訂票的信息,并將信息插入到數(shù)據(jù)庫(kù)中用戶(hù)擁有訂票的權(quán)限。成功輸入錄入信息并保存。MERCURYQuality Center醫(yī)業(yè)分組件測(cè)成夾驗(yàn)堂上一步下一步工且,群助,域FT測(cè)試,項(xiàng)目:飛機(jī)訂票系也 用戶(hù):張喜服舞器時(shí)間2 56 2006-7-?T V X諂田

12、信息快照快照設(shè)計(jì)步驟設(shè)計(jì)步驟自動(dòng)自動(dòng)使用者使用者T | CsgMnt t+Obsolet e- -飛吼訂飛吼訂累累泯泯程測(cè)試程測(cè)試打打開(kāi)訂單開(kāi)訂單41旦京旦京國(guó)國(guó)新訂單新訂單琦琦除訂單除訂單輸入輸入-X 蠢數(shù)名蠢數(shù)名值夾型默認(rèn)直默認(rèn)直描逑描逑planeDataplaneFro-mplaneTo ordecNaite ticketNum. berthTypeSt ring String St ringSt ringString String121208DenverLondon1312313 first航班日期航班日期起點(diǎn)起點(diǎn)駕占訂單名稱(chēng)訂單名稱(chēng)機(jī)票敷機(jī)票敷席街申類(lèi)席街申類(lèi)輸出輸出-碼碼新建新建

13、H wt 1參數(shù)名參數(shù)名 orderNost rinj1丁單組件請(qǐng)求組件請(qǐng)求 今今刷新刷新 兮移動(dòng)兮移動(dòng)x刪除刪除 無(wú)使用無(wú)使用者者分配紿:分配紿:張喜T T導(dǎo)導(dǎo)至此腳本開(kāi)發(fā)完畢。也實(shí)現(xiàn)了腳本和業(yè)務(wù)層、數(shù)據(jù)層的脫離,現(xiàn)在單個(gè)組件腳本實(shí)現(xiàn)業(yè)務(wù)流程中的某一個(gè)功能且腳本中不會(huì)涉及具體的測(cè)試數(shù)據(jù),從而為實(shí)現(xiàn)三層結(jié)構(gòu)打下 基礎(chǔ)。接下來(lái)的工作就是在QC中組織需要測(cè)試的業(yè)務(wù)流程以及需要的測(cè)試數(shù)據(jù)。這里有一個(gè)需要注意的地方,就是在QTP創(chuàng)建腳本如果選擇Bussiness Component類(lèi)型,在 設(shè)計(jì)步驟”選項(xiàng)卡可以看到QTP中的關(guān)鍵字視圖,相關(guān)人員可以像在QTP操作一樣,但是看不到代碼。這也是為何上邊為何

14、創(chuàng)建腳本組件的原因。2 . 5業(yè)務(wù)流程的組織業(yè)務(wù)流程的組織主要是在測(cè)試計(jì)劃”模塊中實(shí)現(xiàn)。這的主要工作是由業(yè)務(wù)測(cè)試人員完成。規(guī)劃好目錄結(jié)構(gòu)以后,根據(jù)需要測(cè)試的業(yè)務(wù)流程拖拽需要的組件即可。這一步和在測(cè)試計(jì)劃”中拖拽測(cè)試用例很相似,區(qū)別就是這個(gè)是組合業(yè)務(wù)流程,而且可以自動(dòng)執(zhí)行。組織好后的效果如圖:3 Kercuty Quality Center 9.0 - Microsoft Internet Exploiec文件任)編報(bào)d)查看&)收液 工具CD稍助如后退/夕球會(huì) g 創(chuàng)總心掃i ! http :/zilin 8080/qcbixx/start_a. htfiMERCURY*Quality

15、 Center需求業(yè)務(wù)垠件額做計(jì)劃缺陷城:BP瑚試,項(xiàng)目:飛機(jī)訂票系統(tǒng),用戶(hù):張喜測(cè)試實(shí)驗(yàn)室控制面板形務(wù)器時(shí)fl: 22.28 2008-7-2上一步下一步工具幫助 注用的完畢3 lercuty Quality Center 9.0- liczosoft Internet Explocer文件更)編報(bào)d)查看&)收液 工且任)帔稍看。后退 |* 1/覆索會(huì)收由務(wù)&O口H盛Lhttp:/zilin 8080/qcbxxx/start_a. htn甬完畢汁大 8 四需要注意的是,創(chuàng)建用例是請(qǐng)選擇BUSINESS-PROCESS”測(cè)試類(lèi)型,否則組件腳本拖拽不過(guò)來(lái)。拖拽腳本是在測(cè)試腳本

16、”選項(xiàng)卡中進(jìn)行,如上圖。限于篇幅,在此創(chuàng)建目錄和拖拽等動(dòng)作不再詳述,請(qǐng)參見(jiàn)QC的用戶(hù)手冊(cè)。另外,根據(jù)實(shí)際的系統(tǒng),可以把組件分組,以組的形式控制流程。例如,選擇如圖的2到4的組件,然后選擇工具欄叉號(hào)旁邊的圖標(biāo),即可把組件分成一組。這樣可以更好的控制流程。 至此,所有的業(yè)務(wù)流程均以實(shí)現(xiàn)。可以在QC中選擇運(yùn)行(綠色箭頭),進(jìn)行相關(guān)的調(diào)試。這里實(shí)現(xiàn)的是三層結(jié)構(gòu)中的業(yè)務(wù)層。這里進(jìn)行的業(yè)務(wù)流程組織和腳本沒(méi)有任何關(guān)系,相關(guān)人員不用關(guān)心腳本如何實(shí)現(xiàn),只要保證所有的流程均已覆蓋即可。接下來(lái)就是要實(shí)現(xiàn)數(shù)據(jù)層的工作了,從而實(shí)現(xiàn)三層的測(cè)試架構(gòu)。2 . 6測(cè)試數(shù)據(jù)的組織測(cè)試數(shù)據(jù)的組織也是在 測(cè)試計(jì)劃”模塊中實(shí)現(xiàn)。選擇某

17、一個(gè)流程,在測(cè)試腳本”選項(xiàng)卡中右擊要設(shè)計(jì)數(shù)據(jù)的組件,在彈出窗口中選擇迭代”,彈出組件迭代設(shè)置窗口,如圖:組件選擇航班并插入迭代指定業(yè)務(wù)組件將在業(yè)州程刪試達(dá)行期間每次循環(huán)中使用的參數(shù)值或者,選擇“輸出”參數(shù)復(fù)選框以使用以前 業(yè)務(wù)組件的輸出參數(shù)值作為此組件的輸入。令添加送代 W 選擇循環(huán) 導(dǎo)人*導(dǎo)出一planeDat a (s口上且件白planeFron. (s口上個(gè)組件0planeTa ts口上 f 組4orderNane(i口上一個(gè)組件fticketNum口上一個(gè)組berthType口上一個(gè)組忤迭代#1111208DenverLondon訂單11first迭代#2121108PortlandD

18、enver訂單22Business送代#3111108DenverLondon訂單33Economy參數(shù)berthType描述:能位種類(lèi)在此可以根據(jù)測(cè)試需求設(shè)置組件要迭代的次數(shù),以及每次迭代的參數(shù)值。如上圖,設(shè)置了3次迭代每次迭代輸入的訂單信息均不相同。同時(shí)可以設(shè)置輸入?yún)?shù)選擇上一個(gè)組件的輸出參數(shù)(在復(fù)選框中打勾,按提示操作即可),如下圖。是流程4中的打開(kāi)訂單”組件,orderNo參數(shù)使用的是 選擇航班并插入”組件的輸出參數(shù)。注意,此流程的 班并插入”設(shè)置了三次迭代,所以 打開(kāi)訂單”也要對(duì)應(yīng)三次迭代,否則會(huì)提示錯(cuò)誤。| 確定 取消幫助選擇航在組織數(shù)據(jù)時(shí),可以在單個(gè)組件中設(shè)置每次迭代的數(shù)據(jù),由于

19、組件的重用次數(shù)很多,所以這樣做還是有些麻煩。解決方法就是在外部組織好數(shù)據(jù)后,批量導(dǎo)入txt文本文件,格式可以把現(xiàn)有參數(shù)導(dǎo)出,參照它給的格式設(shè)計(jì)自己數(shù)據(jù)即可。至此,數(shù)據(jù)層的設(shè)計(jì)也已完畢。同時(shí)也實(shí)現(xiàn)了測(cè)試數(shù)據(jù)和具體的業(yè)務(wù)流程相分離。QC默認(rèn)是其實(shí),這里的數(shù)據(jù)和業(yè)務(wù)層的分離并不是很徹底,不能根據(jù)自己的想法去設(shè)計(jì),所以還有很大的改進(jìn)空間,還需要進(jìn)一步研究。通過(guò)以上幾個(gè)步驟,開(kāi)發(fā)工作基本結(jié)束。以后就是需要相關(guān)的維護(hù)即可。當(dāng)然,最后還是要執(zhí)行測(cè)試。2 . 7執(zhí)行測(cè)試測(cè)試的執(zhí)行是在 測(cè)試實(shí)驗(yàn)室”中進(jìn)行的。這里和操作QC執(zhí)行用例很相似。也是組織目錄,拖拽相應(yīng)的測(cè)試流程即可,這里也不在累述??蓞⒁?jiàn)用戶(hù)手冊(cè)執(zhí)行測(cè)試用例部分。 當(dāng)然執(zhí)行測(cè)試可以選擇本機(jī)執(zhí)行,也可以選擇在遠(yuǎn)程機(jī)器上執(zhí)行測(cè)試,但要注意要安裝相應(yīng)組件和設(shè)置主機(jī)。執(zhí)行效果如下圖:z3 Kercury duality Center 9.0 - Kicrosoft Internet Explozer文件任)編鉗虛)查看&)收液工且d)稍助如 。局S O區(qū)1畫(huà)G /覆索、,收篇夾 ,6j http:/zilin 8080/qcbiix/stwta. htnMERCURY*上一步下一*工具幫助注精Quality

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論