必威电竞|足球世界杯竞猜平台

WinRunner工具
來源:互聯(lián)網(wǎng)

Mercury Interactive公司的WinRunner工具是一款專門用于企業(yè)級功能測試的軟件,旨在檢測應(yīng)用程序能否達到預(yù)期功能并正常運行。

功能特點

創(chuàng)建測試

WinRunner工具提供了一種簡單的測試創(chuàng)建方法,即通過點擊鼠標(biāo)和鍵盤,完成標(biāo)準(zhǔn)業(yè)務(wù)操作流程,WinRunner工具自動記錄操作并生成所需腳本代碼。此外,還允許直接修改測試腳本以適應(yīng)更復(fù)雜的測試需求。WinRunner工具提供這兩種測試創(chuàng)建方式,以滿足測試團隊中業(yè)務(wù)用戶和專業(yè)技術(shù)人員的不同需求。

插入檢查點

在錄制測試期間,可以插入檢查點,以檢查應(yīng)用程序在特定狀態(tài)下的運行狀況。WinRunner工具會在插入檢查點后收集一組數(shù)據(jù)指標(biāo),并在測試運行時逐一驗證。WinRunner工具提供多種類型的檢查點,包括文本、GUI、位圖和數(shù)據(jù)庫。例如,使用位圖檢查點,可以檢查公司圖標(biāo)是否出現(xiàn)在指定位置。

驗證數(shù)據(jù)

除了創(chuàng)建和運行測試外,WinRunner工具還可驗證數(shù)據(jù)庫的數(shù)值,確保業(yè)務(wù)交易的準(zhǔn)確性。在創(chuàng)建測試時,可以設(shè)置要檢測的數(shù)據(jù)庫表和記錄;在測試運行時,測試程序會自動對比數(shù)據(jù)庫的實際值和預(yù)期值。WinRunner工具會突出顯示有新增、刪除或插入記錄,以引起關(guān)注。

增強測試

為了進行全面測試,需要使用不同類型的數(shù)據(jù)進行測試。WinRunner工具的數(shù)據(jù)驅(qū)動向?qū)?數(shù)據(jù) Driver Wizard)可通過簡單點擊鼠標(biāo),將業(yè)務(wù)流程測試轉(zhuǎn)化為數(shù)據(jù)驅(qū)動測試,反映多個用戶的真實行為。例如,在訂單輸入流程中,可以將訂單號或客戶名稱作為可變字段,使用多組數(shù)據(jù)進行測試。使用Data Driver Wizard,可以選擇訂單號或客戶名稱,并將其替換為數(shù)據(jù)表格文件中的相應(yīng)欄目。數(shù)據(jù)驅(qū)動測試不僅可以節(jié)省時間和資源,還能提高應(yīng)用的測試覆蓋率。

函數(shù)生成器

WinRunner工具的Function Generator可用于從目錄列表中選擇功能并將其添加到測試中,以提高測試能力。例如,可以選擇“calendar”子目錄中的Calendar_select_date()函數(shù),并直觀地輸入?yún)?shù),將該函數(shù)插入測試中。

虛擬對象向?qū)?/h3>

對于一些非標(biāo)準(zhǔn)對象,WinRunner工具的Virtual Object Wizard可以幫助識別先前未知的對象。使用Virtual Object Wizard,可以選擇未知對象的類型、標(biāo)識和命名。在錄制使用該對象的測試時,WinRunner工具會自動對應(yīng)其名稱,提高測試腳本的可讀性和測試質(zhì)量。

運行測試

創(chuàng)建完測試腳本并插入檢查點和必要功能后,即可運行測試。WinRunner工具會自動操作應(yīng)用程序,就像真實用戶按照業(yè)務(wù)流程執(zhí)行每一步操作。測試運行期間,如有網(wǎng)絡(luò)消息窗口或其他意外事件出現(xiàn),WinRunner工具會根據(jù)預(yù)設(shè)排除干擾。

分析結(jié)果

測試完成后,需要分析測試結(jié)果。WinRunner工具通過交互式報告工具提供詳細(xì)的、易讀的報告。報告中會列出測試中發(fā)現(xiàn)的錯誤內(nèi)容、位置、檢查點和其他重要事件,幫助分析測試結(jié)果。這些測試結(jié)果也可通過Mercury Interactive的測試管理工具TestDirector查閱。

維護測試

隨著時間推移,開發(fā)人員會對應(yīng)用程序進行修改,并需要增加更多測試。使用WinRunner工具,無需對程序的每次改動都重新創(chuàng)建測試。WinRunner工具可以創(chuàng)建在整個應(yīng)用程序生命周期內(nèi)均可重復(fù)使用的測試,顯著節(jié)省時間和資源,充分利用測試投資。每次記錄測試時,WinRunner工具會自動創(chuàng)建GUI Map文件,保存應(yīng)用對象。這些對象按層級組織,既可概覽所有對象,也可查詢具體對象詳情。通常,對應(yīng)用程序的任何改動都會影響數(shù)百個測試。通過修改一個GUI Map文件而不是無數(shù)個測試,WinRunner工具實現(xiàn)了測試重用。

無線應(yīng)用準(zhǔn)備

隨著無線設(shè)備種類和數(shù)量的增長,應(yīng)用程序測試計劃需要同時滿足傳統(tǒng)基于瀏覽器的用戶和無線瀏覽設(shè)備,如移動電話、傳呼機和個人數(shù)字助理(PDA)。無線應(yīng)用協(xié)議(Wireless Application Protocol, WAP)是一種開放的、全球性的網(wǎng)絡(luò)協(xié)議,用于支持標(biāo)準(zhǔn)數(shù)據(jù)格式化和無線設(shè)備信號傳輸。使用WinRunner工具,測試人員可以利用微型瀏覽模擬器記錄業(yè)務(wù)流程操作,并回放和檢查業(yè)務(wù)流程功能的正確性。

使用技巧

通配符

WinRunner工具支持使用通配符。

文件路徑

在TSL語言中,文件路徑需要用雙斜杠表示。

控件識別問題

在錄制腳本時,如果某些控件未能識別,可能是由于未加載相應(yīng)的插件,或者WinRunner工具在應(yīng)用程序啟動后才啟動。

建立數(shù)據(jù)庫檢查點

建立數(shù)據(jù)庫檢查點時,如果無法新建查詢,可能是因為系統(tǒng)中未安裝微軟 Query。解決方案是在Office 2000的安裝程序中,將Microsoft Query設(shè)置為本地運行。

自動加載GUI Map文件

```Python

static test_Path = getvar("testname");

static guifile_path = test_Path + "\\GUI_File.gui";

GUI_unload_all();

GUI_load(guifile_path);

report_msg(test_Path);

```

以上代碼示例展示了如何自動加載GUI Map文件。

測試過程

WinRunner工具的測試過程大致可分為六個階段:

1. 創(chuàng)建GUI Map文件:WinRunner工具通過此文件識別被測試應(yīng)用程序中的GUI對象。

2. 創(chuàng)建測試腳本:通過錄制、編程或兩者結(jié)合的方式創(chuàng)建。在錄制測試腳本時,可在想要檢查被測試應(yīng)用程序響應(yīng)之處插入驗證點。

3. 調(diào)試腳本:使用調(diào)試(Debug)模式運行測試腳本,確保其順利運行。還可使用WinRunner工具提供的Step、Step Into、Step Out等功能調(diào)試腳本。

4. 運行測試:使用驗證(Verify)模式運行測試腳本,測試應(yīng)用程序。當(dāng)WinRunner工具遇到驗證點時,會將被測應(yīng)用程序中的當(dāng)前數(shù)據(jù)與先前捕獲的期望數(shù)據(jù)進行比較。如果有任何不匹配,WinRunner工具會捕獲當(dāng)前情況作為真實結(jié)果。

5. 檢查結(jié)果:確認(rèn)測試腳本成功與否。每次測試腳本運行結(jié)束后,WinRunner工具會將結(jié)果顯示在報告中。報告描述了運行中遇到的重要事件,如驗證點、錯誤信息、系統(tǒng)信息或用戶信息。如果運行中發(fā)現(xiàn)任何不匹配的驗證點,可以在測試結(jié)果窗口中查看期望結(jié)果和實際結(jié)果。

6. 提交缺陷:如果測試腳本因所測試應(yīng)用程序中的缺陷而失敗,可以直接從測試結(jié)果窗口中提取缺陷相關(guān)信息。

GUI Map文件

WinRunner工具利用GUI Map文件識別應(yīng)用程序中的對象。它將學(xué)習(xí)到的窗口或?qū)ο笮畔⒋鎯υ贕UI Map文件中。當(dāng)WinRunner工具運行測試腳本時,它利用GUI Map查找對象。它從GUI Map文件中讀取對象的描述,并在被測應(yīng)用程序中搜索具有相同屬性的對象。GUI Map文件中的每個對象都有一個邏輯名稱和一個物理描述。對象的邏輯名稱由其類決定。在大多數(shù)情況下,邏輯名稱被視為顯示在對象上的標(biāo)簽。可以修改已分配的邏輯名稱,使其更具描述性或縮短長度。當(dāng)對象的屬性發(fā)生變化時,必須修改其物理描述。GUI Map文件的擴展名為“.gui”。

腳本語言

WinRunner工具的腳本語言是Mercury Interactive's Test Script Language (TSL),一種類似C的腳本語言。可以通過添加TSL函數(shù)和編程元素(如Windows API)或WinRunner工具的虛擬編程工具(函數(shù)生成器(函數(shù) Generator))來增強錄制的腳本。

錄制模式

WinRunner工具提供兩種不同的錄制模式:環(huán)境判斷錄制(Context Sensitive recording)和模擬錄制(Analog recording)。

運行模式

WinRunner工具提供三種不同的運行模式:驗證(Verify)、調(diào)試(Debug)和更新(Update)。

Add-In

加載Add-In實際上是將Add-In中的特殊函數(shù)加載到內(nèi)存中。當(dāng)創(chuàng)建測試腳本時,僅列出選定Add-In中的函數(shù)。在運行腳本時,僅執(zhí)行已加載Add-In中的函數(shù),否則WinRunner工具會報錯。

驗證點

驗證點可以使您比較被測應(yīng)用程序的當(dāng)前行為與其早期版本的行為。WinRunner工具提供四種驗證點:GUI checkpoints、Bitmap checkpoints、Text checkpoints 和Database checkpoints。

同步點

同步點解決了測試腳本與應(yīng)用程序之間的預(yù)期時間差異問題。例如,如果您創(chuàng)建一個打開數(shù)據(jù)庫應(yīng)用程序的測試腳本,可以添加一個同步點,讓測試腳本等待直到數(shù)據(jù)庫中的記錄加載到屏幕上。

編譯模塊

編譯模塊實際上是一種腳本,其中包含可供其他測試腳本頻繁調(diào)用的用戶自定義函數(shù)集合。當(dāng)加載編譯模塊時,其函數(shù)將自動編譯并保存在內(nèi)存中。其他測試腳本可以直接調(diào)用它們。編譯模塊可以改善腳本的組織和性能。由于已在使用它們之前進行了調(diào)試,因此測試腳本只需要很少的錯誤檢查。此外,調(diào)用已編譯的函數(shù)的速度明顯快于解釋測試腳本中的函數(shù)。當(dāng)編譯模塊用于存儲可重用的函數(shù)時,測試腳本包含WinRunner工具中的可執(zhí)行文件。編譯模塊本身是非可執(zhí)行的。

數(shù)據(jù)驅(qū)動測試

當(dāng)測試您的應(yīng)用程序時,您可能希望檢查它如何處理大量數(shù)據(jù)集的相同操作。您可以創(chuàng)建一個數(shù)據(jù)驅(qū)動測試,其中包含一個循環(huán),該循環(huán)運行十次,每次循環(huán)均由不同的數(shù)據(jù)集驅(qū)動。為了使WinRunner工具能夠使用數(shù)據(jù)驅(qū)動測試,您必須將數(shù)據(jù)鏈接到要驅(qū)動的測試腳本。這稱為參數(shù)化(Parameterizing)您的測試。數(shù)據(jù)存儲在一個數(shù)據(jù)表格(數(shù)據(jù) Table)中。您可以手動執(zhí)行這些操作,或使用DataDriver Wizard參數(shù)化您的測試腳本并將數(shù)據(jù)存儲在數(shù)據(jù)表格中。

定制對象

定制對象是指不屬于WinRunner工具使用的標(biāo)準(zhǔn)類之一的任何GUI對象。WinRunner工具將此類對象學(xué)習(xí)為通用“object”類。WinRunner工具使用obj_mouse_語句記錄在定制對象上的操作。如果定制對象與標(biāo)準(zhǔn)對象非常相似,可以將其映射為標(biāo)準(zhǔn)類別之一。您還可以在環(huán)境判斷測試(Context Sensitive testing)時配置WinRunner工具,以識別定制對象的屬性。

虛擬對象

應(yīng)用程序可能包含外觀和行為類似于GUI對象的位圖。WinRunner工具使用win_mouse_click語句記錄操作。通過將位圖對象定義為虛擬對象,當(dāng)錄制并運行測試時,可以教導(dǎo)WinRunner工具將其視為GUI對象。

無法識別GUI對象的原因

WinRunner工具可能因為多種原因無法識別GUI對象,包括非標(biāo)準(zhǔn)的Windows對象、未安裝必需的插件以及所使用的瀏覽器與WinRunner工具版本不兼容等情況。

啟動文件

在General Options -> Environment -> Startup文本框中,選擇或輸入您希望作為啟動文件的測試腳本。

輸入測試腳本相關(guān)信息

在創(chuàng)建測試腳本之前,您可以在Test Properties -> General和描寫文中輸入與腳本相關(guān)的詳細(xì)信息,如被測功能的類型、測試腳本的詳細(xì)說明以及引用的相關(guān)功能說明書文檔。

如何處理定制對象

定制對象是不屬于WinRunner工具所使用的標(biāo)準(zhǔn)類之一的任何GUI 對象。WinRunner工具學(xué)習(xí)此類的對象為generic "object"類。WinRunner工具利用obj_mouse_語句來記錄在定制對象的操作。

什么是虛擬對象

虛擬對象是指應(yīng)用程序中的一些外觀和行為與GUI對象類似的位圖。WinRunner工具利用win_mouse_click 語句來記錄操作。通過定義一個位圖對象為虛擬對象,當(dāng)你錄制并運行測試時,你可以教WinRunner工具將它象一個GUI對象一樣對待。

參考資料 >

WinRunner(功能測試工具) V8.2 免費版.系統(tǒng)之家.2024-08-30

功能自動化測試工具——WinRunner篇.51Testing軟件測試網(wǎng).2024-08-30

winrunner 測試工具.博客園.2024-08-30

生活家百科家居網(wǎng)