QTP.2完全使用手冊(cè)_第1頁
QTP.2完全使用手冊(cè)_第2頁
QTP.2完全使用手冊(cè)_第3頁
QTP.2完全使用手冊(cè)_第4頁
QTP.2完全使用手冊(cè)_第5頁
已閱讀5頁,還剩37頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

功能自動(dòng)化測(cè)試工具(QTP_9.2)完全使用手冊(cè)8月QTP工具簡介自動(dòng)化測(cè)試的好處 但凡有過手工測(cè)試經(jīng)歷的讀者,對(duì)于手工測(cè)試的缺陷一定是深有體會(huì)的。手工測(cè)試既單調(diào)又耗時(shí),需要投入大量的人力,并且更糟糕的是,假如項(xiàng)目時(shí)間有限制,那么會(huì)常常導(dǎo)致無法徹底地手工測(cè)試所有功能,從而導(dǎo)致某些潛在的軟件缺陷沒有發(fā)現(xiàn),進(jìn)而使得軟件產(chǎn)品的質(zhì)量存在較大的隱患。鑒于上述手工測(cè)試的缺陷,市面上出現(xiàn)了一大批功能自動(dòng)化測(cè)試工具,QTP就是其中的翹楚。作為MI企業(yè)推出的拳頭產(chǎn)品之一,QTP可以測(cè)試Windows原則應(yīng)用測(cè)試、各類Web對(duì)象,ActiveX控件,VisualBasic應(yīng)用程序等,并且還可以根據(jù)實(shí)際狀況加載不一樣的插件,從而測(cè)試?yán)鏞racle,SAP應(yīng)用等服務(wù)。QTP通過記錄并模擬實(shí)際顧客的操作,例如點(diǎn)擊鼠標(biāo)、單擊圖形顧客界面(GUI)等,并通過一系列的強(qiáng)化功能,如設(shè)置檢查點(diǎn),進(jìn)行參數(shù)化操作等,實(shí)現(xiàn)了對(duì)功能測(cè)試的自動(dòng)化過程,從而將測(cè)試工程師從大量繁瑣的手工測(cè)試中解放出來。迅速(Fast)QTP運(yùn)行測(cè)試比實(shí)際顧客快得多可靠(Reliable)測(cè)試每次運(yùn)行時(shí)都會(huì)精確執(zhí)行相似的操作,因此消除了人為的錯(cuò)誤可反復(fù)(Repeatable)您可以通過反復(fù)執(zhí)行相似的操作來測(cè)試網(wǎng)站或應(yīng)用程序的反應(yīng)可程序化(Programmable)您可以編寫復(fù)雜的測(cè)試來找出隱藏的信息廣泛(Comprehensive)您可以建立一套測(cè)試來測(cè)試網(wǎng)站或應(yīng)用程序的所有功能可復(fù)用性(Reusable)您可以在不一樣版本的網(wǎng)站或應(yīng)用程序上反復(fù)使用測(cè)試,甚至在顧客界面更改的狀況下也不例外QTP測(cè)試流程 QTP的測(cè)試流程可以分為7個(gè)階段,準(zhǔn)備錄制——>錄制腳本——>增強(qiáng)腳本——>調(diào)試腳本——>運(yùn)行測(cè)試——>成果分析——>匯報(bào)缺陷。準(zhǔn)備錄制:在進(jìn)行腳本錄制前,需要確認(rèn)待錄制的程序和QTP的有關(guān)參數(shù)與否設(shè)置好,同步要對(duì)測(cè)試腳本中的環(huán)節(jié)事先運(yùn)行一遍或多遍,首先熟悉腳本環(huán)節(jié),另首先也看待錄制程序進(jìn)行事前檢查。錄制腳本:按照腳本設(shè)計(jì)中的環(huán)節(jié),逐漸進(jìn)行腳本錄制。假如不慎操作了不在計(jì)劃中的環(huán)節(jié),不要慌亂,我們可以在后續(xù)的環(huán)節(jié)中對(duì)腳本進(jìn)行調(diào)整。增強(qiáng)腳本:對(duì)前期錄制的腳本進(jìn)行對(duì)應(yīng)的增長腳本操作,如設(shè)置檢查點(diǎn),以自動(dòng)判斷程序的輸出與否與預(yù)期一致;設(shè)置參數(shù)化,以滿足程序用多組數(shù)據(jù)來執(zhí)行相似的操作;編寫邏輯判斷語句、循環(huán)語句等,從而實(shí)現(xiàn)腳本的多次執(zhí)行等等。調(diào)試腳本:在完畢腳本的增強(qiáng)操作后,我們需要對(duì)腳本進(jìn)行調(diào)試工作,從而保證在后續(xù)的執(zhí)行測(cè)試過程中能順利的運(yùn)行。運(yùn)行測(cè)試:通過運(yùn)行程序,來檢查程序的行為。在執(zhí)行該環(huán)節(jié)時(shí),QTP將按照腳本中的設(shè)置,自動(dòng)打開運(yùn)行程序或者瀏覽器,執(zhí)行腳本中的每個(gè)環(huán)節(jié)。成果分析:將運(yùn)行測(cè)試的成果記錄下來,以便確定應(yīng)用程序中的缺陷匯報(bào)缺陷:假如安裝了QC,則能將測(cè)試成果中發(fā)現(xiàn)的缺陷匯報(bào)給QC中,從而實(shí)現(xiàn)了與測(cè)試管理工具的無縫連接。QTP的安裝闡明 QTP運(yùn)行在Windows平臺(tái)上,下表為QTP配置的基本規(guī)定安裝環(huán)境配置規(guī)定CPU256MHZ以上操作系統(tǒng)Windows98SE以上內(nèi)存規(guī)定128MB以上磁盤空間規(guī)定200MB以上瀏覽器規(guī)定IE5.0以上Netscape4.0以上 在安裝QTP之前,需要闡明的一種問題是,務(wù)必把QTP的安裝文獻(xiàn)放在一種全英文途徑下,例如:D:\QTP9.2;假如安裝文獻(xiàn)的途徑中具有中文字符,則有也許導(dǎo)致安裝過程中出現(xiàn)錯(cuò)誤。 QTP安裝環(huán)節(jié)如下(闡明,在這里我們以QTP9.2作為簡介對(duì)象):以管理員的身份登錄系統(tǒng),點(diǎn)擊QTP安裝文獻(xiàn)中的“setup.exe”圖標(biāo),自動(dòng)彈出安裝頁面,如下圖所示: 其中:“QuickTestProfessional安裝”為安裝主程序;“產(chǎn)品信息”為一種鏈接,鏈接到QTP的產(chǎn)品信息頁面;“自述文獻(xiàn)”為QTP的Readme文獻(xiàn);“QualityCenter加載項(xiàng)”為安裝QualityCenter客戶端,從而和QTP協(xié)同使用;“QuickTestPlus”為安裝QuickTest的工具包; 我們點(diǎn)擊其中的“QuickTestProfessional”選項(xiàng),進(jìn)入下一步。點(diǎn)擊“QuickTestProfessional”后,系統(tǒng)會(huì)首先判斷系統(tǒng)與否安裝了.NetFramework2.0(該程序?yàn)镸icrosoft開發(fā)的,目的在于容許使用不一樣編程語言和庫進(jìn)行協(xié)同工作以創(chuàng)立基于Windows的應(yīng)用程序)。假如系統(tǒng)中沒有安裝,則會(huì)彈出一種提醒界面,如下圖所示: 我們點(diǎn)擊圖中的“確定”按鈕,從而安裝.NetFramework2.0程序。我們按照引導(dǎo)程序安裝.NetFramework2.0程序后,系統(tǒng)將進(jìn)入QTP安裝中的許可協(xié)議面中,如下圖所示:點(diǎn)擊其中的“我接受該許可協(xié)議中的條款(A)”,然后點(diǎn)擊其中的“是(Y)”按鈕,進(jìn)入下一種安裝界面。(3)在彈出注冊(cè)信息界面,填寫顧客名、企業(yè)名稱、維護(hù)號(hào),點(diǎn)擊“下一步”(4)在彈出的“許可證類型”界面中,如下圖所示: 我們選擇其中的“演示版”(假如有正版授權(quán),我們可以選擇對(duì)應(yīng)的“單機(jī)版”或“并發(fā)版”),QTP的演示版提供了14天的試用期限。需要闡明的是,假如計(jì)算機(jī)本來安裝了Winrunner或者是QTP的網(wǎng)絡(luò)版,那么就不能再安裝演示版。(5)在彈出的配置選項(xiàng)中,如下圖所示: 設(shè)置該界面的目的在于嚴(yán)禁瀏覽器的腳本調(diào)試功能,系統(tǒng)提供了自動(dòng)配置和手動(dòng)設(shè)置兩種類型。這里我們選擇自動(dòng)配置選項(xiàng)。當(dāng)然,我們也可以選擇手工設(shè)置,詳細(xì)環(huán)節(jié)如下:打開IE瀏覽器,選擇“工具/Internet選項(xiàng)”;選擇“高級(jí)”標(biāo)簽,選擇“嚴(yán)禁調(diào)試腳本”復(fù)選框,并點(diǎn)擊“確定”按鈕。(6)在彈出的調(diào)試支持界面中,如下圖所示: 該界面問詢與否安裝Microsoft的腳本調(diào)試工具——ScriptDebugger。假如下載了該腳本調(diào)試工具,那么我們運(yùn)用QTP錄制腳本時(shí),在設(shè)置斷點(diǎn)等功能時(shí),就能啟用腳本調(diào)試功能。因此提議假如能上網(wǎng),則按照該界面中的默認(rèn)選項(xiàng)設(shè)置,下載并安裝MicrosoftScriptDebugger工具。(7)在彈出的“安裝類型”界面中,如下圖所示: 在該面中,顧客可以根據(jù)實(shí)際狀況,選擇完全安裝或者自定義安裝。假如選擇自定義安裝,則顧客可以根據(jù)自身狀況,酌情選擇需要安裝加載的插件。在這里,我們選擇完全安裝。(8)在彈出“選擇目的位置”界面中,點(diǎn)擊“開始”(9)安裝完畢后,需要重新啟動(dòng)計(jì)算機(jī),這樣QTP就可以使用了。(10)破解安裝QTP9.2原程序安裝完原程序后,將GetLicense.exe注冊(cè)機(jī)放到安裝目錄(默認(rèn)C:\ProgramFiles\MercuryInteractive\QuickTestProfessional)并運(yùn)行它,注冊(cè)機(jī)將生成一種注冊(cè)文獻(xiàn),該文獻(xiàn)在C:\ProgramFiles\CommonFiles\MercuryInteractive\LicenseManager。用記事本打開名字為lservrc的文獻(xiàn),復(fù)制“第一行中含#之前的所有字符”。第一次運(yùn)行時(shí),選擇seatlicence,將前面復(fù)制的字符粘貼。確認(rèn)后,就可以無限期免費(fèi)使用QTP9.2。QTP構(gòu)成 打開QTP的啟動(dòng)程序后,系統(tǒng)將展示如下的界面: 其中:“Tutorial”為聯(lián)機(jī)協(xié)助;“StartRecording”為開始錄制測(cè)試腳本;“OpenExisting”為打開一種原有的測(cè)試腳本;“BlankTest”為新建一種空的測(cè)試腳本。我們選擇其中的“BlankTest”進(jìn)入QTP的主界面,如下圖所示:下面讓我們來認(rèn)識(shí)一下QTP的構(gòu)成:標(biāo)題欄:顯示目前打開測(cè)試腳本的名稱;菜單欄:包括QTP所有功能的菜單項(xiàng)選擇項(xiàng);文獻(xiàn)工具欄:包括一系列的按鈕,用于協(xié)助管理測(cè)試;測(cè)試工具欄:包括一系列的按鈕,用于協(xié)助完畢測(cè)試流程;測(cè)試面板:顯示測(cè)試成果的主體部分,包括兩大部分,關(guān)鍵字視圖(KeywordView)和專家視圖(ExpertView);數(shù)據(jù)表格:用于對(duì)測(cè)試進(jìn)行參數(shù)化,可以存儲(chǔ)和管理某個(gè)測(cè)試對(duì)象的多種不一樣的數(shù)值,它包括兩個(gè)標(biāo)簽,Global和Action1;顧名思義,Global中的數(shù)據(jù)合用于所有的Action中,而Action1中的數(shù)據(jù)僅合用于某個(gè)Action中;活動(dòng)屏幕:在運(yùn)行腳本時(shí),活動(dòng)屏幕中能實(shí)時(shí)地顯示出目前正在運(yùn)行的不一樣界面;狀態(tài)欄:顯示QTP的狀態(tài)。使用MercuryTours范例網(wǎng)站為了以便顧客更好的理解、學(xué)習(xí)、掌握QTP的操作,QTP自身帶了范例,這就是非常經(jīng)典的“飛機(jī)訂票”案例。點(diǎn)擊“開始”——>“所有程序”——>“QuickTestProfessional”——>“SampleApplications”,我們就能看到這兩個(gè)案例。其中“Flight”是單機(jī)版的,用于管理名行系統(tǒng)的訂票記錄,具有新建、查詢訂單的功能,而“MercuryToursWebsite”是QTP提供的一種基于B/S構(gòu)造的小型網(wǎng)站系統(tǒng)。在前面的章節(jié)中,我們已經(jīng)提到QTP與Winrunner最大的區(qū)別之一,就是QTP更合用于B/S架構(gòu)的測(cè)試,同步鑒于目前基于B/S架構(gòu)的系統(tǒng)越來越多,因此在背面的章節(jié)中,我們將重點(diǎn)簡介QTP錄制“MercuryToursWebsite”時(shí)的基本操作,對(duì)于“Flight”這種C/S架構(gòu)的操作將不做簡介,但愿讀者能諒解,有愛好的讀者在學(xué)習(xí)完本章后可以自己去嘗試。下面,我們進(jìn)入案例中來先熟悉一下有關(guān)內(nèi)容。打開瀏覽器,在地址欄中輸入:,將打開MercuryTours主頁;要登錄并使用MercuryTours應(yīng)用程序,我們需要進(jìn)行注冊(cè)顧客操作。在打開的主頁上,點(diǎn)擊“REGISTER”按鈕,在打開的注冊(cè)頁面中,輸入顧客名、密碼,并確認(rèn)密碼(注冊(cè)頁面中的紅色標(biāo)出部分為必填項(xiàng),其他為選填項(xiàng),可以不填寫,其他的頁面中也同樣)。填寫完畢后,點(diǎn)擊“SUBMIT”按鈕,MercuryTours將完畢注冊(cè)操作,在彈出確實(shí)認(rèn)頁面上,選中并點(diǎn)擊“SIGN-IN”按鈕進(jìn)入應(yīng)用程序,在跳轉(zhuǎn)的頁面中,輸入剛剛注冊(cè)成功的顧客名和密碼,點(diǎn)擊“SUBMIT”按鈕進(jìn)可進(jìn)入“FlightFinder”頁面。從“FlightFinder”頁開始,我們就可以按照屏幕上的闡明,完畢從航班信息展示到預(yù)定航班等一系列的操作。需要闡明的是,在“BookaFlight”頁面中,紅色部分標(biāo)出的“Passenger”和“CreditCard”輸入的信息可以是虛構(gòu)的信息。在完畢訂票的操作后,我們點(diǎn)擊頁面上方的“SIGN-OFF”按鈕,退出系統(tǒng),這樣一種完整的訂票流程就完畢了。這個(gè)流程但愿大家多操作幾遍,到達(dá)純熟操作的程度,從而為我們下面簡介QTP的基礎(chǔ)合用打下一種良好的基礎(chǔ)。QTP基礎(chǔ)使用 在上一節(jié)中,我們提到QTP的測(cè)試流程分為七個(gè)關(guān)鍵環(huán)節(jié),其中有關(guān)第一種環(huán)節(jié)“準(zhǔn)備錄制”在商一節(jié)中我們已經(jīng)簡介過了,因此不再贅述。對(duì)于最終一種環(huán)節(jié)“匯報(bào)缺陷”,有關(guān)的內(nèi)容將在測(cè)試管理篇中進(jìn)行簡介。因此本節(jié)和下一節(jié)將重點(diǎn)簡介剩余的五個(gè)環(huán)節(jié)。下面我們按照環(huán)節(jié)一步步來展開論述QTP的使用。錄制腳本 在本部分中,我們將錄制在MercuryTours網(wǎng)站上預(yù)定從Frankfurt到London航班的進(jìn)程。打開QTP:啟動(dòng)QTP程序,保證在“加載項(xiàng)管理器”中,勾選上了“Web”選項(xiàng)。然后在探出的導(dǎo)航頁面中選擇“BlankTest”選項(xiàng),或者在文獻(xiàn)工具欄中選擇“New”——>“Test”選項(xiàng),從而打開一種新的錄制程序界面。啟動(dòng)錄制:在打開新的錄制程序后,點(diǎn)擊測(cè)試工具欄中的“Record”按鈕,系統(tǒng)將打開“錄制和運(yùn)行設(shè)置”對(duì)話框,如下圖所示: 在“Web”選項(xiàng)卡中,我們可以選擇瀏覽器類型、輸入待測(cè)試網(wǎng)站的地址、選擇“當(dāng)測(cè)試關(guān)閉時(shí)與否關(guān)閉瀏覽器”和“不在已打開的瀏覽器上錄制和運(yùn)行”等狀態(tài)。其中,瀏覽器類型我們選擇IE,待測(cè)試網(wǎng)站地址輸入:http://。至于背面兩個(gè)選項(xiàng),我們啟用默認(rèn)狀態(tài)(當(dāng)然大家可以根據(jù)實(shí)際狀況進(jìn)行對(duì)應(yīng)的選擇)。在“Windows應(yīng)用程序”選項(xiàng)卡中,確認(rèn)“在如下應(yīng)用程序(會(huì)話開始時(shí)打開的)上錄制并運(yùn)行”處在選定狀態(tài),且未列出任何應(yīng)用程序。該設(shè)置可防止在錄制腳本期間無意中錄制在多種Windows應(yīng)用程序(如Office)上執(zhí)行的操作。上述環(huán)節(jié)都執(zhí)行完畢后,點(diǎn)擊“確定”按鈕,就能開始QTP的錄制了。需要闡明的是,QTP是可以用來錄制C/S程序的,當(dāng)錄制C/S程序時(shí),我們需要在“Windows應(yīng)用程序”選項(xiàng)卡中指定應(yīng)用程序即可。開始錄制:在彈出的IE界面中,輸入我們此前注冊(cè)過的顧客名和密碼,點(diǎn)擊“Sign-In”按鈕;進(jìn)入到“FlightFinder”頁面;在“FlightFinder”頁面中,我們?cè)凇癉epartingFrom”選擇“Frankfurt”,“ArrivingIn”選擇“London”,其他的都采用默認(rèn)值,然后點(diǎn)擊“Continue”按鈕,進(jìn)入“SelectFlight”頁面;需要闡明的是,在執(zhí)行這一環(huán)節(jié)時(shí),請(qǐng)不要點(diǎn)擊“ViewCalendar”按鈕,由于該按鈕會(huì)打開一種基于Java的日歷,而本次測(cè)試未加載Java加載項(xiàng)(Java加載項(xiàng)是需要單獨(dú)購置的外部加載項(xiàng))。在“SelectFlight”頁面中,我們還是采用默認(rèn)值,點(diǎn)擊“Continue”按鈕,進(jìn)入“BookAFlight”頁面;在“BookAFlight”頁面中,我們需要在紅色標(biāo)出的部分填寫信息,這些信息可以輸入任意虛構(gòu)的信息,同步在“BillingAddress”部分,勾選“TicketlessTravel”選項(xiàng)。上述信息填寫完畢后,點(diǎn)擊“SecurePurchase”按鈕,進(jìn)入“FlightConfirmation”頁面;在“FlightConfirmation”頁面中,我們確認(rèn)一下信息后,點(diǎn)擊“BackToHome”頁面;停止錄制:在上述環(huán)節(jié)都執(zhí)行完畢后,一種完整的測(cè)試流程已經(jīng)完畢了,這個(gè)時(shí)候我們需要停止QTP的錄制程序,只需要點(diǎn)擊測(cè)試工具欄中的“停止”按鈕即可。保留測(cè)試:錄制完畢的腳本,我們可以將其進(jìn)行保留操作。執(zhí)行并分析腳本 在開始執(zhí)行腳本之前,讓我們先回憶一下我們上一階段的成果,如下圖所示:下面我們對(duì)其中的一部分內(nèi)容進(jìn)行闡明。Item:以基于圖標(biāo)的層次樹形是現(xiàn)實(shí)每個(gè)環(huán)節(jié)(測(cè)試對(duì)象、使用程序?qū)ο?、函?shù)調(diào)用或語句)的項(xiàng)。Operation:要在項(xiàng)上執(zhí)行的操作,如Select、Set等。Value:選定操作的參數(shù)值,如,單擊圖像時(shí)要使用的鼠標(biāo)按鈕。Documentat:描述環(huán)節(jié)所執(zhí)行操作的自動(dòng)文檔,用易于理解的句子編寫。左下角的DataTable重要寄存的是某些參數(shù),我們會(huì)在背面的學(xué)習(xí)過程對(duì)這部分進(jìn)行深入學(xué)習(xí);右下角的ActiveScreen展示的是每個(gè)環(huán)節(jié)所執(zhí)行的動(dòng)作,其中用粉色框部分突出顯示的是目前環(huán)節(jié)所點(diǎn)擊的按鈕,如上圖所示,目前環(huán)節(jié)點(diǎn)擊的是“BACKTOHOME”按鈕,我們還可以選擇不一樣的環(huán)節(jié),看看ActiveScreen顯示的圖片;下面開始回放一遍剛剛錄制的腳本,點(diǎn)擊測(cè)試工具欄中的“執(zhí)行”按鈕,系統(tǒng)將自動(dòng)進(jìn)入腳本回放階段,彈出如圖XX所示的界面。這個(gè)界面重要是提醒回放的成果保留在什么位置。我們采用默認(rèn)位置,點(diǎn)擊“確定”按鈕,系統(tǒng)將開始進(jìn)行腳本回放。腳本回放的目的在于:通過腳本回放我們可以看看我們錄制的腳本與否是按照當(dāng)時(shí)設(shè)計(jì)的環(huán)節(jié)執(zhí)行的,同步通過腳本回放我們能判斷腳本錄制與否成功。QTP在進(jìn)行腳本回放的同步,會(huì)自動(dòng)彈出IE窗口,在IE中會(huì)按照錄制腳本的環(huán)節(jié)逐一進(jìn)行操作,我們可以通過IE窗口中的動(dòng)作來觀測(cè)腳本的錄制與否和當(dāng)時(shí)設(shè)計(jì)的一致。腳本回放完畢后,QTP將自動(dòng)啟動(dòng)測(cè)試成果窗口,如圖XX所示:測(cè)試成果窗口分為兩個(gè)部分顯示測(cè)試執(zhí)行成果:TestResultTree:以樹狀圖的方式在窗體的左側(cè)顯示出測(cè)試腳本所執(zhí)行的額環(huán)節(jié),我們可以將樹展開檢查每一種環(huán)節(jié),所有的執(zhí)行環(huán)節(jié)都會(huì)以圖示的方式表達(dá)。假如最終的測(cè)試成果為失敗,我們可以通過TestResultTree展開后迅速查找到究竟是哪個(gè)環(huán)節(jié)導(dǎo)致的失敗。測(cè)試成果的詳細(xì)信息:窗體的右側(cè)顯示的是測(cè)試成果的詳細(xì)信息,其中在第一種表格中會(huì)顯示哪些反復(fù)(iteration)是通過的,哪些反復(fù)是失敗的;第二個(gè)表格顯示的是腳本的檢查點(diǎn),哪些是通過的,哪些是失敗的,以及有幾種警告信息。 闡明:所謂反復(fù),我們可以這樣理解,QTP是以不一樣的資料執(zhí)行整個(gè)測(cè)試或者某個(gè)動(dòng)作的,每一次執(zhí)行可以成為一種反復(fù),并且每個(gè)反復(fù)都會(huì)被編號(hào)。QTP操作技巧檢查點(diǎn) 在學(xué)習(xí)QTP的檢查點(diǎn)之前,我們首先要理解什么是檢查點(diǎn),以及檢查點(diǎn)的作用是什么?其實(shí)在QTP、Winrunner、Loadrunner中均有檢查點(diǎn)的概念,其含義和作用都是相似的。所謂檢查點(diǎn),就是與目前錄制腳本中的某個(gè)元素(也許是圖片,也許是網(wǎng)頁,也也許是文字等)之前插入一種驗(yàn)證點(diǎn),看其與否與預(yù)期成果一致。插入檢查點(diǎn)的好處不言而喻,它能自動(dòng)跟蹤某個(gè)關(guān)鍵窗口元素的顯示狀況,而不用手工去檢查。 檢查點(diǎn)的設(shè)置,我們可以在錄制腳本的過程中設(shè)置,也可以在腳本錄制完畢后再設(shè)置。 QTP提供了如下檢查點(diǎn):檢查點(diǎn)類型闡明范例原則檢查點(diǎn)檢查對(duì)象的屬性檢查某個(gè)radiobutton與否被選用圖片檢查點(diǎn)檢查圖片的屬性檢查圖片的來源文獻(xiàn)與否對(duì)的表格檢查點(diǎn)檢查表格的屬性檢查表格內(nèi)的字段內(nèi)容與否對(duì)的網(wǎng)頁檢查點(diǎn)檢查網(wǎng)頁的屬性檢查網(wǎng)頁加載的時(shí)間或者網(wǎng)頁與否具有不對(duì)的的鏈接文字/文字區(qū)域檢查點(diǎn)檢查網(wǎng)頁上或者窗口上出現(xiàn)文字與否對(duì)的檢查訂票后的與否出現(xiàn)訂票成功的文字圖像檢查點(diǎn)截取網(wǎng)頁或窗口的畫面檢查畫面與否對(duì)的檢查網(wǎng)頁與否如預(yù)期展現(xiàn)數(shù)據(jù)庫檢查點(diǎn)檢查數(shù)據(jù)庫的內(nèi)容與否對(duì)的檢查數(shù)據(jù)庫查詢的值與否對(duì)的Accessiblity檢查點(diǎn)Identifiesareasofawebsitetocheckforsection508comliancyXML檢查點(diǎn)檢查XML文獻(xiàn)的內(nèi)容XML檔案檢查點(diǎn)是用來檢查特定的XML檔案;XML應(yīng)用程序檢查點(diǎn)則是用來檢查網(wǎng)頁內(nèi)所有使用的XML文獻(xiàn) 下面,我們重點(diǎn)學(xué)習(xí)一下其中的原則檢查點(diǎn)、圖片檢查點(diǎn)、文字檢查點(diǎn)和表格檢查點(diǎn)。原則檢查點(diǎn):原則檢查點(diǎn)是用來檢查窗口中的控件對(duì)象(如文本框、按鈕等)的,但凡存儲(chǔ)到對(duì)象倉庫(ObjectRepository)中的對(duì)象它都能檢查。其操作措施如下:首先,在關(guān)鍵字視圖中選擇要檢查的對(duì)象,然后選擇菜單欄中的Insert—>CheckPoint—>StandardCheckPoint,如圖XX所示;或者直接在ActiveScreen上選擇要檢查的對(duì)象,右擊鼠標(biāo),選擇其中的InsertStanardCheckPoint,如圖所示。選擇完畢后,QTP會(huì)彈出原則檢查點(diǎn)屬性對(duì)話框,如圖XX所示。在該對(duì)話框中,我們可以根據(jù)實(shí)際狀況選擇需要檢查的屬性,例如選擇name屬性,其值為login。那么在程序運(yùn)行期間,QTP會(huì)根據(jù)這個(gè)屬性來檢查該按鈕的實(shí)際值和預(yù)期一致。 在該頁面中,尚有其他某些屬性設(shè)置,其含義如下ConfigureValue:屬性值,它有兩個(gè)選項(xiàng)Constant:屬性為一種常量;Parameter:屬性為一種可變的參數(shù),可以自己設(shè)置Checkpointimeout:QTP在該檢查點(diǎn)停留的最大時(shí)間,假如超過該事件,屬性還和預(yù)期不符,則系統(tǒng)會(huì)報(bào)錯(cuò);Insertstatement:插入檢查點(diǎn)的位置,一般系統(tǒng)的默認(rèn)值為插入目前環(huán)節(jié)之前;原則點(diǎn)插入完畢后,我們可以在關(guān)鍵字視圖和專家視圖中進(jìn)行查看,如圖XX和圖XX所示。文字檢查點(diǎn):原則檢查點(diǎn)可以檢查窗口中的控件對(duì)象,那么對(duì)于沒有存儲(chǔ)到對(duì)象倉庫中的文字和圖片,原則檢查點(diǎn)是無法進(jìn)行驗(yàn)證的。因此針對(duì)這一問題,QTP引入了圖片檢查點(diǎn)和文字檢查點(diǎn)。 文字檢查點(diǎn)的作用就是檢查應(yīng)用程序窗體上或者Web網(wǎng)頁上的文字信息與否和預(yù)期相符,其操作措施和原則檢查點(diǎn)的措施類似;對(duì)于文字檢查點(diǎn)的操作我們不做贅述(我們以selectaflight頁面中的depart標(biāo)題信息中的frankfurt作為我們聯(lián)絡(luò)文字檢查點(diǎn)的示例),我們重點(diǎn)學(xué)習(xí)一下文字檢查點(diǎn)的某些屬性。當(dāng)我們?cè)诓迦胍环N文字檢查點(diǎn)后,系統(tǒng)將彈出如圖XX所示的文字檢查點(diǎn)對(duì)話框。在上圖所示的界面中,展示出文字檢查點(diǎn)的屬性CheckedText:檢查被選擇的文本。TextBefore:檢查被選擇文本之前的文本;TextAfter:檢查被選擇文本之后的文本;Constant:設(shè)置文字內(nèi)容為一種詳細(xì)的常量;Parameter:設(shè)置文本內(nèi)容為一種可變的參數(shù);MatchCase:與否辨別大小寫;Ignorespaces:與否忽視空格;Exactmatch:精確匹配,假如不選中該項(xiàng),那實(shí)際成果中假如完全包括預(yù)期成果或者包括預(yù)期成果的一部分也能通過;Textnotdisplayed:不顯示的文字與否要檢查;Checkpointtimeout:QTP在該檢查點(diǎn)停留的最大時(shí)間,假如超過該事件,屬性還和預(yù)期不符,則系統(tǒng)會(huì)報(bào)錯(cuò);Insertstatement:插入檢查點(diǎn)的位置,一般系統(tǒng)的默認(rèn)值為插入目前環(huán)節(jié)之前;圖片檢查點(diǎn):圖片檢查點(diǎn)的作用是檢查程序運(yùn)行時(shí)的某幅圖片與否和預(yù)期相符。需要闡明的是,假如由于顯卡、操作系統(tǒng)、辨別率的不一樣,有也許導(dǎo)致圖像檢查點(diǎn)的誤差,這是就需要顧客根據(jù)實(shí)際狀況靈活應(yīng)用。圖片檢查點(diǎn)的應(yīng)用和文字檢查點(diǎn)是相似的,在此我們不做詳細(xì)簡介。表格檢查點(diǎn):表格檢查點(diǎn)的作用是檢查程序運(yùn)行時(shí)某個(gè)表格與否和預(yù)期相符。和文字檢查略不一樣的是,文字檢查點(diǎn)只能檢查一種詞語,而表格檢查點(diǎn)可以檢查一種表格(一種表格有多少元素,表格檢查點(diǎn)就會(huì)設(shè)置幾種檢查元素)。我們以Bookaflight中機(jī)票價(jià)格為例來學(xué)習(xí)表格檢查點(diǎn)的設(shè)置:進(jìn)入關(guān)鍵字視圖,選擇bookaflight,然后在ActiveScreen中選擇第一種航班價(jià)格(270),點(diǎn)擊鼠標(biāo)右鍵,選擇InsertStandardCheckpoint,系統(tǒng)將一種對(duì)話框,這是系統(tǒng)默認(rèn)選擇的是WebElement:270,這是我們選擇上一層的WebTable對(duì)象,如圖XX所示。(當(dāng)我們選擇WebTable時(shí),在ActiveScreen中,對(duì)應(yīng)的表格也將突出顯示)點(diǎn)擊上圖中的OK按鈕,系統(tǒng)將彈出如圖XX所示的表格檢查點(diǎn) 系統(tǒng)默認(rèn)是每個(gè)字段都會(huì)被勾選,表達(dá)所有字段都會(huì)做檢查。我們可以根據(jù)實(shí)際狀況,勾選要做檢查的字段。我們?cè)诖斯催x第一種270,如圖XX所示點(diǎn)擊ok按鈕,系統(tǒng)將完畢表格檢查點(diǎn)的設(shè)置。在關(guān)鍵字視圖中也將出現(xiàn)對(duì)應(yīng)的檢查點(diǎn),如圖XX所示參數(shù)化 參數(shù)化是QTP中一種十分重要的功能。我們?cè)谄匠y(cè)試過程中,常常碰到這樣的狀況,例如在訂票時(shí),我們也許要輸入100組不一樣的訂票數(shù)據(jù),最直接的處理措施就是根據(jù)這些不一樣的數(shù)據(jù)錄制100組腳本,不過這樣的工作量可想而知。在QTP中,通過引入?yún)?shù)化措施,將我們從這些龐大的工作中解放出來,我們可以錄制一種腳本,通過參數(shù)化,建立這100組不一樣的數(shù)據(jù),QTP在執(zhí)行測(cè)試腳本時(shí),就會(huì)分別使用這100組數(shù)據(jù),執(zhí)行100次新增訂單的測(cè)試。 下面,我們此前面錄制的訂票腳本為例,來學(xué)習(xí)怎樣在QTP中使用參數(shù)化功能。在最初的腳本中,我們錄制的是從Frankfurt到London這組數(shù)據(jù),并沒有測(cè)試其他地點(diǎn),因此我們?cè)诖诉x擇將出發(fā)地點(diǎn)作為我們練習(xí)參數(shù)化的“戰(zhàn)場(chǎng)”。打開前面錄制好的訂票腳本,進(jìn)入關(guān)鍵字視圖中,將其所有展開,進(jìn)入Findaflight—>fromport,選擇其中的Value列,點(diǎn)擊其中的參數(shù)化圖標(biāo),如圖XX所示:系統(tǒng)將彈出參數(shù)設(shè)置的對(duì)話框,如圖XX所示: 在該對(duì)話框中,其各屬性闡明如下:Constant:輸入為一種常量;Parameter:輸入?yún)?shù)化;我們選擇parameter選項(xiàng),會(huì)看到如圖XX所示的選項(xiàng)Datatable:在數(shù)據(jù)表中設(shè)置參數(shù)Environment:從系統(tǒng)環(huán)境變量中獲取參數(shù),如主機(jī)名稱等;Randomnumber:系統(tǒng)產(chǎn)生一種隨機(jī)數(shù)作為參數(shù),隨機(jī)數(shù)的范圍可以進(jìn)行設(shè)定Name:參數(shù)名稱Locationindatatable:選擇參數(shù)的使用范圍;其中Globalsheet是指該參數(shù)合用于全局。Currentactionsheet(local)是指該參數(shù)僅合用目前的Action。 這里我們選擇Parameter選項(xiàng),選擇其中的Datatable,參數(shù)名設(shè)置為departure,其他都選用默認(rèn)選項(xiàng),點(diǎn)擊ok按鈕后,我們會(huì)發(fā)目前關(guān)鍵字視圖左下角中的Datatable中出現(xiàn)一列名為depature的參數(shù),其第一種值就是我們最開始錄制腳本是的frankfurt,如圖XX所示;下面,我們開始在數(shù)據(jù)表中輸入?yún)?shù)。我們點(diǎn)擊Datatable中的departure列,在其第二行中輸入portland,第三行輸入seattle;這個(gè)時(shí)候,我們的參數(shù)化工作與否已經(jīng)結(jié)束呢?不,我們與否還記得在前面講檢查點(diǎn)的時(shí)候,我們?cè)?jīng)對(duì)frankfurt設(shè)置過文字檢查點(diǎn)。假如我們對(duì)findaflight頁面中的frankfurt進(jìn)行了參數(shù)化,那么必將對(duì)背面的文字檢查點(diǎn)產(chǎn)生影響。因此在此我們還要修正受到參數(shù)化影響的測(cè)試環(huán)節(jié)。我們進(jìn)入frankfurt這個(gè)文字檢查點(diǎn),進(jìn)入該檢查點(diǎn)的對(duì)話框,選擇其中parmeter選項(xiàng),并點(diǎn)擊其parameteroptions選項(xiàng),如圖XX所示 系統(tǒng)將啟動(dòng)一種對(duì)話窗口,我們?cè)趎ame屬性中的下拉列表中選用我們?cè)O(shè)置的參數(shù)名departure,指定這個(gè)文字檢查點(diǎn)使用departure字段中的值,當(dāng)成是檢查點(diǎn)的預(yù)期值,如圖XX所示。 這樣一種完整的參數(shù)化過程就結(jié)束了,我們可以運(yùn)行一下參數(shù)化后的腳本,看與否能成功。其運(yùn)行成果如圖XX所示。輸出值 在前面學(xué)習(xí)參數(shù)化的過程中,我們是通過datatable來設(shè)置不一樣的參數(shù)。其實(shí)我們還可以從應(yīng)用程序輸出數(shù)據(jù)到datatable,并且該數(shù)據(jù)還可以在后續(xù)階段被使用。 我們還是以我們前面錄制的飛機(jī)訂票腳本作為我們學(xué)習(xí)輸出值的范例。我們?cè)趯W(xué)習(xí)參數(shù)化時(shí),曾經(jīng)將出發(fā)地進(jìn)行了參數(shù)化操作,細(xì)心的讀者會(huì)發(fā)現(xiàn)對(duì)出發(fā)地進(jìn)行參數(shù)化操作后,會(huì)出現(xiàn)如下一種問題,那就是不一樣的出發(fā)地,會(huì)導(dǎo)致在BookaFlight界面中的機(jī)票價(jià)格不一樣。假如我們對(duì)機(jī)票價(jià)格設(shè)置了文字檢查點(diǎn),那么由于出發(fā)地不一樣導(dǎo)致的機(jī)票價(jià)格不一樣,將會(huì)直接導(dǎo)致機(jī)票價(jià)格文字檢查點(diǎn)不能通過驗(yàn)證,那么怎樣來處理這個(gè)問題呢?這個(gè)時(shí)候,就需要引入QTP中的輸入值。其詳細(xì)操作措施如下:此前面我們學(xué)習(xí)參數(shù)化的腳本為基礎(chǔ),在其基礎(chǔ)之上按照表格檢查點(diǎn)設(shè)置環(huán)節(jié),在Bookaflight界面中為第一種機(jī)票價(jià)格設(shè)置表格檢查點(diǎn); 針對(duì)這個(gè)腳本,我們嘗試著運(yùn)行一遍,看當(dāng)作果怎樣?其最終止果如圖XX所示產(chǎn)生錯(cuò)誤的原因我們?cè)谇懊嬉呀?jīng)分析過了,下面我們開始來分析怎樣處理這個(gè)錯(cuò)誤。在Bookaflight頁面中的機(jī)票是從Selectaflight頁面中讀取過來的,因此我們的測(cè)試腳本應(yīng)當(dāng)從Selectaflight頁面中獲取機(jī)票價(jià)格,從而去驗(yàn)證Bookaflight頁面上顯示的機(jī)票價(jià)格。因此在關(guān)鍵字視圖中,我們選擇Selectaflight,在ActiveScreen中選

溫馨提示

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

評(píng)論

0/150

提交評(píng)論