天天看點

WinRunner測試設計(2)

版權聲明:本文為部落客chszs的原創文章,未經部落客允許不得轉載。 https://blog.csdn.net/chszs/article/details/1583655

WinRunner測試設計(2)

1、使用Context Sensitive Recording來建立測試

它根據GUI對象來建立測試。在錄制期間,WinRunner識别每一個你點選的GUI對象(例如視窗,按鈕或清單)和執行的操作(如拖放,點選,選擇)。

例如:你在一個Open對話框中點選Open按鈕,WinRunner将記錄如下:

button_press("Open");

彈出的對話框每一次的位置有可能不同,但你不必擔心,因為WinRunner能正确識别它。

要記住Context Sensitive測試總是連同GUI map和GUI map檔案一起工作的。

下面的例子說明了測試腳本和GUI map的連接配接。它還說明了邏輯名和實體描述之間的連接配接。假定你錄制一個測試,你要列印一個readme檔案,通過在file菜單中選擇print指令來打開對話框,然後點選OK按鈕。腳本如下:

#Activate the Readme.doc-WordPad window.

win_activate("Readme.doc-WordPad");

#Direct the Readem.doc-WordPad window to receive input.

set_window("Readme.doc-WordPad",10);

#Choose File>Print.

menu_select_item("File;Print...Ctrl+P");

#Direct the Print window to receive input.

set_window("Print",10);

#Click the OK button.

button_press("OK");

WinRunner試着把屬性清單和它們的值(為涉及到的每一個對象)寫入GUI map的描述中。

當打開GUI map和高亮顯示的對象時,你能看到相應的實體描述。

WinRunner為其它視窗和對象寫下面的描述進GUI map中:

File menu:{class:menu_item,label:File,parent:None}

Print command:{class:menu_item,label:"Print...Ctrl+P",parent:File}

Print window:{class:window,label:Print}

OK button:{class:push_button,label:OK}

WinRunner還能為每一個對象配置設定一個邏輯名。當WinRunner運作測試時,它讀入測試腳本的每個對象的邏輯名,并在GUI map中引用它的實體描述。WinRunner使用這個描述來查找被測試應用程式的對象。

要錄制Context Sensitive mode的測試:

1)選擇Test菜單下Record-Context Sensitive,或者點選Record-Context Sensitive按鈕;

2)用鍵盤和滑鼠執行所計劃的測試;

插入檢查點和同步點作為選擇适當的指令所需,或從Insert菜單:GUI檢查點,Bitmap檢查點,Database檢查點等。

3)停止錄制,點選Test菜單下的Stop Recording,或者點選Stop。

WinRunner沒有為你的對象錄制适當的TSL語句:

1)增加未裝入的支援對象插件;

例如:對于HTML對象,你必須載入WebTest插件。

2)對象是一個定制類對象。

如果定制對象和标準對象相似,你可以map定制類到标準類;

你可以增加一個定制GUI對象類;

你可以建立定制錄制和可執行函數。

WinRunner不能從HTML頁面中讀取文本:

1)WebTest插件未能安裝;

2)在HTML架構或table中,WinRunner不能識别作為原始輸入的文本;

2.1)使用Insert菜單下的Get Text下的From Selection(Web only)指令來檢索HTML頁面上的文本。

對于一個架構,WinRunner将插入一個Web_frame_get_text語句;

對其它GUI對象類,WinRunner将插入一個web_obj_get_text語句。

2.2)使用Insert菜單下的Get Text下的Web Text Checkpoint指令來檢測是否一個指定的文本字元串在HTML頁面上存在。

對于一個架構,WinRunner将插入一個Web_frame_text_exists語句;

對于其它GUI對象類,WinRunner将插入一個web_obj_text_exists語句。

繼續閱讀