QTP_完全指導(dǎo)學(xué)習(xí)教程5-4_第1頁
QTP_完全指導(dǎo)學(xué)習(xí)教程5-4_第2頁
QTP_完全指導(dǎo)學(xué)習(xí)教程5-4_第3頁
QTP_完全指導(dǎo)學(xué)習(xí)教程5-4_第4頁
QTP_完全指導(dǎo)學(xué)習(xí)教程5-4_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第四章參數(shù)化在測試應(yīng)用程序時,可能想檢查對應(yīng)用程序使用不同輸入數(shù)據(jù)進(jìn)行同一操作時,程序是 否能止常的工作。在這種情況下,你口j以將這個操作重復(fù)錄制多次,每次填入不同的數(shù)據(jù), 這種方法雖然能夠解決問題,但實現(xiàn)起來太笨拙了。quicktest提供了一個更好的方法來解 決這個問題參數(shù)化測試腳本。參數(shù)化測試腳木包括數(shù)據(jù)輸入的參數(shù)化和檢測點(diǎn)的參數(shù) 化。使用quicktest可以通過將固定值替換為參數(shù),擴(kuò)展基本測試或組件的范圍。該過程 (稱為參數(shù)化)大大捉髙了測試或纟i件的功能和靈活性。叮在quicktest中使川參數(shù)功能,通過參數(shù)化測試或組件所使川的值來增強(qiáng)測試或組 件。參數(shù)是一種從外部數(shù)據(jù)源或牛成器賦

2、值的變量。quicktest nj以參數(shù)化測試或組件中的步驟和檢查點(diǎn)中的值。還可以參數(shù)化操作參數(shù)的 值。如果希望參數(shù)化測試或組件中多個步驟屮的同一個值,可能需要考慮使用數(shù)據(jù)驅(qū)動器, 而不是手動添加參數(shù)。4.1參數(shù)化步驟和檢查點(diǎn)中的值例如,應(yīng)川程序或網(wǎng)站可能包含一個帶有編輯字段的表單,川戶可以在該編輯字段中鍵 入用戶名。你可能希望測試應(yīng)用稈序或網(wǎng)站是否讀取該信息并將其止確顯示在對話框小???以插入一個對已登錄的用戶名使用內(nèi)置環(huán)境變量的文本檢查點(diǎn),以檢查顯示的信息是否正 確。通過參數(shù)化檢査點(diǎn)屬性的值,可以檢査應(yīng)用程序或網(wǎng)站如何基于不同的數(shù)據(jù)執(zhí)行相同的 操作。例如,如果要測試mercury tour

3、s示例網(wǎng)站,可以創(chuàng)建一個檢查點(diǎn),以便檢查預(yù)訂機(jī)票 后該機(jī)票是否被正確預(yù)訂。假設(shè)您蠱耍檢查針対各種不同h的地所預(yù)訂的航班是否正確???以為目的地信息添加一個數(shù)據(jù)衣參數(shù),而不是為每個目的地分別創(chuàng)建帶有單獨(dú)檢杏點(diǎn)的不同 測試或組件。對于測試或組件的每次循環(huán),quicktest都會針對不同目的地檢查航班信息。4.1.1參數(shù)化對象和檢查點(diǎn)的屬性值可以在“對象屬性”或“對象庫”對話框中參數(shù)化對象的一個或多個屬性的值??梢栽?“檢查點(diǎn)屬性”對話框中參數(shù)化檢查點(diǎn)的一個或多個屬性的值。采用下列方式可以打開“對彖屬性”對話框或“檢查點(diǎn)屬性”對話框: 選擇“步驟” > “對象屬性”,或者右鍵單擊某個步驟并選擇

4、“對象屬性”。將打 開“對象屬性”對話框。 選擇“工具” > “對象庫”,單擊“對象庫”工具欄按鈕,或者右鍵單擊包含該 對象的操作或組件,然后選擇“對象庫”。將打開“對象庫”對話框。 選擇“步驟” > “檢査點(diǎn)屬性”,或者右鍵單擊該檢査點(diǎn)并選擇“檢查點(diǎn)丿團(tuán):”。然后在對話框的“配置值”區(qū)域中選擇參數(shù),constant< parameterinput|datat ablef parameterusern ame1 dtglobalsheet)ml如果該值已經(jīng)參數(shù)化,貝,參數(shù)”框?qū)@示該值的當(dāng)前參數(shù)定義。如杲該值尚未參數(shù)化, 則“參數(shù)”框?qū)@示該值的默認(rèn)參數(shù)定義°4.1

5、.2參數(shù)化操作的值如果步驟中使用的方法或函數(shù)具有參數(shù),則可以根據(jù)需要參數(shù)化該參數(shù)值。例如,如果 操作使用click方法,則可以參數(shù)化x參數(shù)、y參數(shù)或這兩者的值。在關(guān)鍵字視圖小選擇已參數(shù)化的值時,將顯示該參數(shù)類型的圖標(biāo)。例如,在以下片段中, 己將set方法的值定義為隨機(jī)數(shù)字參數(shù)。每次運(yùn)行測試或組件吋,quicktest都會在 creditnumber編輯框中輸入一個隨機(jī)數(shù)字值。,呼刼0加 糾enteitinlhewi'ttftbox.r passlastosei "gh" enter "gh" in the "passlasto"

6、; edt boxaeditnumbersei 國槁entei <lhe value of a genetaled(andom nunbeo in the 力血umbef e水 box可以使用視圖中的“值”也列中的參數(shù)化圖標(biāo)來參數(shù)化操作值。 單擊參數(shù)化圖標(biāo)也,打開“值配置選項”對話框,將顯示當(dāng)前定義的值。選擇“參數(shù)”。如果該值已經(jīng)參數(shù)化,則“參數(shù)”部分將顯示該值的當(dāng)前參數(shù)定義。如 果該值尚未參數(shù)化,則“參數(shù)”部分將顯示該值的默認(rèn)參數(shù)定義。單擊“確定”接受顯示的 參數(shù)語句并關(guān)閉該對話框。選擇一個尚未參數(shù)化的值時,quicktest會為該值生成默認(rèn)參數(shù)定義。卜-表描述了如 何確定默認(rèn)參數(shù)設(shè)置

7、:執(zhí)行參數(shù)化時條件默認(rèn)參數(shù)類型默認(rèn)參數(shù)名操作中的步驟或檢查至少在當(dāng)前操作中定操作參數(shù)在“操作屬性”對話點(diǎn)的值義了一個輸入操作參 數(shù)框的“參數(shù)”選項卡 中顯示第一個輸入?yún)?數(shù)嵌套操作的輸入操作 參數(shù)值至少為調(diào)用該嵌套操 作的操作定義了 個 輸入操作參數(shù)操作參數(shù)在調(diào)用操作的“操作 屬性”對話框的“參 數(shù)”選項卡屮顯示第 一個輸入?yún)?shù)頂層操作調(diào)用的輸入 操作參數(shù)值至少為測試定義了 個輸入?yún)?shù)測試參數(shù)在“測試設(shè)置”對話 框的“參數(shù)”選項卡 中顯示第一個輸入?yún)?數(shù)組件中的步驟或檢杏 點(diǎn)的值至少為該組件定義了 一個輸入?yún)?shù)組件參數(shù)在“業(yè)務(wù)組件設(shè)置” 對話框的“參數(shù)”選 項卡中顯示第一個輸 入?yún)?shù)如果上述相

8、關(guān)條件不為真,則默認(rèn)參數(shù)類型為“數(shù)據(jù)表”。如果接受了默認(rèn)參數(shù)詳細(xì)信 息,quicktest將用基丁選定值的名稱新建一個數(shù)據(jù)表參數(shù)。4.2參數(shù)種類quicktcst有四種類型的參數(shù): 測試、操作或紐件參數(shù),通過它可以使用從測試或紐件中傳遞的值,或者來自測試 中的其他操作的值。為了在特定操作內(nèi)使川某個值,必須將該值通過測試的操作層 次結(jié)構(gòu)向下傳遞到所尙的操作。然后,可以使川該參數(shù)值來參數(shù)化測試或組件中的 步驟。例如,假設(shè)要使用從運(yùn)行(調(diào)用)測試的外部應(yīng)川程序傳遞到測試中的某個 值來參數(shù)化action3小的一個步驟??蓪⒃撝祻臏y試級別傳遞到action!(頂層 操作)至action3 (action

9、!的子操作),然后使用該“操作”輸入?yún)?shù)值(從外 部應(yīng)用程序傳遞的值)來參數(shù)化所需的步驟。 數(shù)據(jù)表參數(shù),通過它可以創(chuàng)建使川您所提供的數(shù)據(jù)多次運(yùn)行的數(shù)據(jù)驅(qū)動的測試(或 操作)。在每次重復(fù)(或循環(huán))屮,quicktest均使川數(shù)據(jù)表中不同的值。例如, 假設(shè)您的應(yīng)用程序或網(wǎng)站包含一項功能,用戶可以通過該功能從成員數(shù)據(jù)庫中搜索 聯(lián)系信息。當(dāng)用戶輸入某個成員的姓名時,將顯示該成員的聯(lián)系信息,以及一個標(biāo) 記為"查看vmemname的照片”的按鈕,其屮vmemname是該成員的姓名。 可以參數(shù)化按鈕的名稱屬性,以便在運(yùn)行會話的每次循環(huán)期間,quicktest町標(biāo)識 不同的照片按鈕。 環(huán)境變量參數(shù),

10、通過它可以在運(yùn)行會話期間使用來口其他來源的變量值。這些變量 值可能是您所提供的值,或者是quicktest基于您選擇的條件和選項而生成的值。 例如,可以讓quicktest從某個外部文件讀取用于填寫web表單的所有值,或者 可以使用quicktest的內(nèi)置環(huán)境變量之一來插入有關(guān)運(yùn)行測試或組件的計算機(jī)的 當(dāng)前信息。 隨機(jī)數(shù)字參數(shù),通過它可以插入隨機(jī)數(shù)字作為測試或組件的值。例如,要檢查應(yīng)川 程序處理大小機(jī)票訂單的方式,可以讓quicktest生成一個隨機(jī)數(shù)字,然后將其 插入到“票數(shù)”編輯字段中。4.2.1使用數(shù)據(jù)表參數(shù)町以通過創(chuàng)建數(shù)據(jù)表參數(shù)來為參數(shù)提供可能的值列表。通過數(shù)據(jù)表參數(shù)對以創(chuàng)婕使用所 提

11、供的數(shù)據(jù)多次運(yùn)行的數(shù)據(jù)丞動測試、組件或操作。在每次重復(fù)中,quicktest均使用數(shù)據(jù) 表中不同的值。例如,考慮mercury tours示例網(wǎng)站,通過該網(wǎng)站可預(yù)訂航班請求。要預(yù)訂航班,需要 提供航班路線,然后單擊“繼續(xù)”按鈕。該網(wǎng)站將針對請求的路線返冋可用的航班??赏ㄟ^訪問網(wǎng)站并錄制人量査詢的提交來執(zhí)行該測試。這是一個既費(fèi)時乂費(fèi)力的低效解 決方案。通過使川數(shù)據(jù)表參數(shù),可以連續(xù)對多個査詢運(yùn)行測試或組件。參數(shù)化測試或纟ii件時,需要首先錄制訪問網(wǎng)訥并針対所請求的一條路線來檢查可用航班 的步驟。然后將錄制的路線替換為某個數(shù)據(jù)農(nóng)參數(shù),并在數(shù)據(jù)表的全局表中添加自己的數(shù)據(jù) 集,每條路線一個。|a1pme

12、w yorkdeparturearrivalcdefg上1new yorksdn francisco2london"paris3frankfureacapulco45678-global k actionl /1補(bǔ)ju"廠新建數(shù)據(jù)表參數(shù)時,將在數(shù)據(jù)表屮添加新的一列,并將參數(shù)化的當(dāng)前值放在第一行屮。 如果要對值進(jìn)行參數(shù)化并選擇現(xiàn)有的數(shù)據(jù)表參數(shù),則將保留所選參數(shù)的列屮的值,并這些 值不會被參數(shù)的當(dāng)前值覆蓋。農(nóng)中的每個列都農(nóng)示單個數(shù)據(jù)衣參數(shù)的值列衣。列標(biāo)題是參數(shù)名。農(nóng)中的每一行都衣示 quicktest在測試或組件的單次循環(huán)期間為所有參數(shù)提交的一組值。運(yùn)行測試或組件時, quic

13、ktest將針對表中的每一行數(shù)據(jù)運(yùn)行一次測試或組件循環(huán)。例如,如果測試在數(shù)據(jù)表的 全局表屮有十行,則運(yùn)行十次循環(huán)。depjitsnj hom:new york acapulco frankfurt londonpans portland san francisco stattlt sydney zunchsan fgciwo 二| acapulco frankfurtlondon new yorkparis portlandfiseattle sydney zunch在上而的例子中,當(dāng)運(yùn)行測試吋,quicktest降為每一個路線分別提交一個查詢。4.2.2使用環(huán)境變量參數(shù)quicktest可以

14、插入環(huán)境變量列表中的值,該列表是對通過測試訪問的變量和相應(yīng)值的 列表。在測試運(yùn)行的整個過程中,無論循環(huán)次數(shù)是多少,環(huán)境變量的值始終保持不變,除非 在腳本中以編程方式更改變量的值。quicktest有以下三種環(huán)境變豊 用戶定義的內(nèi)部環(huán)境變量、用戶定義的外部環(huán)境變量 以及內(nèi)置環(huán)境變量。川戶定義的內(nèi)部環(huán)境變量-在測試內(nèi)定義的變量。這些變量與測試一起保存,并且只能 在定義這些變量的測試內(nèi)訪問。在“測試設(shè)置”對話框或“參數(shù)選項”對話框的“環(huán)境”選 項卡屮,可以創(chuàng)建或修改測試屮川戶定義的內(nèi)部環(huán)境變塑。用八定義的外部環(huán)境變量在活動外部環(huán)境變量文件中預(yù)定義的變mo nj'根據(jù)需要創(chuàng)建 任意多的文件,并

15、為每個測試選擇一個適當(dāng)?shù)奈募?,或者更改用于每個測試運(yùn)行的文件。內(nèi)置環(huán)境變量-表示有關(guān)測試和運(yùn)行測試的計算機(jī)的信息的變量,例如測試路徑和操作 系統(tǒng)。從所有測試和組件中都可以訪問這些變量,并ii它們都被指定為只讀變量4.2.3使用隨機(jī)數(shù)字參數(shù)當(dāng)選擇“隨機(jī)數(shù)字”作為參數(shù)類型時,可以通過“參數(shù)選項”對話框?qū)?shù)配置為使川 隨機(jī)數(shù)字?!爸蹬渲眠x項”對話框的“參數(shù)”部分與“參數(shù)選項”對話框非常相似。數(shù)字范圍-指定用于生成隨機(jī)數(shù)字的范圍。默認(rèn)情況下,隨機(jī)數(shù)字范圍介于0和100之 間??赏ㄟ^在“從”和“到”框中輸入不同的值來修改此范圍。該范圍必須介于0和 2147483647 (包含)之間。名稱指定參數(shù)的名稱

16、。通過為隨機(jī)參數(shù)指定名稱可以在測試屮多次使川同一個參數(shù)。 可以選擇現(xiàn)有的命名參數(shù),或者通過輸入新的描述性名稱來新建命名參數(shù)。牛成新隨機(jī)數(shù)字-定義命名隨機(jī)參數(shù)的牛成計時。選中“名稱”復(fù)選框時會啟用該框。 可以選擇下列選項z-: 為每次操作循環(huán):在每次操作循環(huán)結(jié)束吋生成一個新數(shù)字。 為每次測試循環(huán):在每次全局循環(huán)結(jié)束吋生成一個新數(shù)字。 為整個測試運(yùn)行牛成一次:第一次使用參數(shù)時牛成一個新數(shù)字。在整個測試運(yùn)行中, 對參數(shù)使用同一個數(shù)字。4.3參數(shù)化測試腳本4.3.1定義參數(shù)在上而的課程中我們學(xué)習(xí)了參數(shù)的種類以及參數(shù)化步驟和檢查點(diǎn)中的值,現(xiàn)在我們使用 checkpoint腳本,在測試腳木中,紐約是個常數(shù)

17、值,也就是說,每次執(zhí)行測試腳木預(yù)定機(jī)票 時,出發(fā)地點(diǎn)都紐約,現(xiàn)在,我們將測試腳本中的出發(fā)地點(diǎn)參數(shù)化,這樣,執(zhí)行測試腳本時 就會以不同的出發(fā)地點(diǎn)去預(yù)定機(jī)票了。1. 首先,我們打開checkpoint測試腳本,將腳本另存為“parameter”,然后選擇要參 數(shù)化的文字:在視圖樹屮展開 “ actionl>welcome: mercury tours>find a flight: mercury ”。2. 在視圖樹中選擇“fromport”右邊的“value”字段,然后再點(diǎn)擊參數(shù)化圖標(biāo)也,開 )i a value configuration options"對話窗口 :3設(shè)置

18、要參數(shù)化的屬性,選擇“parameter"選擇項,這樣就可以用參數(shù)值來取代“new york"這個常數(shù)了,在參數(shù)中選擇“dnta table"選項,這樣這個參數(shù)就可以從quicktest 的data table中取得,將參數(shù)的名字改為“departure”。q parameter datatable三|name: |departurelocation in data tableq global sheetcurrent action sheet (local) gkcan cel | help |4. 點(diǎn)擊“ok”確認(rèn),quicktest會在data table中

19、新departure參數(shù)字段,并且插入 了一行new york的值,new york會成為測試腳本執(zhí)行使用的第一個值。參數(shù)化以后可以看到樹視圖中的變化,在參數(shù)之前,這個測試步驟顯示 "foompost .select. new york”,現(xiàn)在,這個步驟變成了 ufbompost .select. data table ("departure " , dtglobalsheet),o而且當(dāng)點(diǎn)擊value字段時,value字段會顯示如圖所示:,表示此測試步驟已經(jīng)被參數(shù)化,而且其值從data table中的departure字 段屮獲得。5. 在departure字段

20、中加入出發(fā)點(diǎn)資料,使quicktest w以使用這些資料執(zhí)行腳本。在departure字段的第二行,第三彳亍分別輸入:portland seattle6. 保存測試腳本。4.3.2修正受到參數(shù)化影響的步驟當(dāng)測試步驟被參數(shù)化以后,有可能會影響到其它的測試步驟也要參數(shù)化,例如我們?yōu)榱?驗證在“flight confirmation”網(wǎng)頁中是否出現(xiàn)“new york"(第三章創(chuàng)建文字檢查點(diǎn)),在 網(wǎng)頁上添加了一個文字檢查點(diǎn)。那么,就耍對出發(fā)地的文字檢查點(diǎn)作參數(shù)化,以符合對出發(fā) 地點(diǎn)參數(shù)化的預(yù)期結(jié)果。修正文字檢査點(diǎn),首先在樹視圖屮,展開"actionl>welcome: me

21、rcury tours>flight confirmation: mercury ” 頁血,然后點(diǎn)擊鼠標(biāo)右鍵,選擇“ checkpoint properties ”,扌殲 “text checkpoint properties ” 對話窗口 :在“checked tex”的constant字段中顯示為“new york”,表示測試腳本在每次執(zhí)行 時,這個文字檢查點(diǎn)的預(yù)期值都為“new york”。我們選擇parameter,點(diǎn)擊旁邊的"parameter options ” 按鈕魔,打開 “ parameter options ” 對話窗口:在參數(shù)類型選擇框選擇“data ta

22、ble”選項,在名字選擇框選擇“departure”選項,指 明這個文字檢查點(diǎn)使用departure字段中的值當(dāng)成檢查點(diǎn)的預(yù)期值。點(diǎn)擊“0k”關(guān)閉窗口,這樣文字檢查點(diǎn)也被參數(shù)化了。4.3.3執(zhí)行并分析使用參數(shù)的測試腳本參數(shù)化測試腳本后,我們運(yùn)行parameter測試腳本。quicktest會使用data table屮departure子段值,執(zhí)行三次測試腳本。執(zhí)行測試腳本:點(diǎn)擊工具欄上的"run”按:孔 開啟run對話窗口,選取uncw run results folder”,其余為默認(rèn)值,點(diǎn)擊“ok”開始執(zhí)行腳木。當(dāng)腳木運(yùn)行結(jié)束后,會開啟測試結(jié)果 窗口。在樹視 圖中,展開“ pai

23、ameter iteration2 > actionl summary > wei come mercury tours>flight confinnation: mercury選擇"checkpoint ” new york "",顯示如卜圖:& par«®eter res6 一 test results-! x|file view tools helpgs s v ©貝鼠鉞題| 4 -f i ?el x?亀 test parameter swnmaryrwtim© datasparameter

24、iteration 1 orow 1)+ v actionl summary- xe parameter iteration 2 crow 2) 白)c actionl summary曰welcome: mercxiry tourswelcome: mercury tours find a flight: mercury select a flight: mercury book a flight: mercury flight confirmation: mercury "checkpoint "hew york "logout"- smart identifi "logout":clicke-sign-on: mercury toursj®

溫馨提示

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

最新文檔

評論

0/150

提交評論