winrunner自動化測試工具課件_第1頁
winrunner自動化測試工具課件_第2頁
winrunner自動化測試工具課件_第3頁
winrunner自動化測試工具課件_第4頁
winrunner自動化測試工具課件_第5頁
已閱讀5頁,還剩54頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

認識WinRunner系統(tǒng)的主要功能及適用范圍認識WinRunner系統(tǒng)進行軟件測試的基本思想與策略學習WinRunner系統(tǒng)進行軟件測試的主要任務和過程掌握運用WinRunner系統(tǒng)工具的應用配置掌握運用WinRunner系統(tǒng)實現(xiàn)功能測試

WinRunner測試系統(tǒng)工具的運用2023/6/4安裝安裝winrunner8.0重啟計算機運行時需要license運行破解目錄下的m-mwr82.exe經過上面的安裝過程,完成winrunner的安裝和破解2023/6/41WinRunner介紹WinRunner(簡稱WR)是一種基于MSWindows的功能測試工具。WR可以幫助用戶自動處理從測試開發(fā)到測試執(zhí)行的整個過程,可以創(chuàng)建可修改和可復用的測試腳本,而不用擔心軟件功能模塊的變更。使用WinRunner進行自動化測試的好處:快速(Fast)、可靠(Reliable)、可重復(Repeatable)、可程序化(Programmable)、可再使用(Reusable)2023/6/4WinRunner的測試模式以WinRunner執(zhí)行測試,就與人工測試一樣,WinRunner

會仿真鼠標的動作與鍵盤的輸入。當在軟件操作中點擊GUI(圖形用戶界面)對象時,WR會使用一種類C的測試腳本語言(TSL)生成一個測試腳本。測試人員可以用手工編程的方法編輯這個腳本。WinRunner有兩種錄制測試的模式:(1)上下文敏感模式(ContextSensitiveMode)(2)模擬模式(AnalogMode)2023/6/4上下文敏感模式上下文敏感模式根據(jù)用戶選取的GUI對象將用戶對軟件的操作動作錄制下來,并忽略這些對象在屏幕上的物理位置。每一次對被測軟件進行操作,測試腳本會描述用戶選取的對象和操作動作。當進行錄制時,WR會對選取的每個對象做唯一描述并寫入GUImap(映射)中。GUImap和測試腳本被分開保存和維護。當軟件用戶界面發(fā)生變化時,用戶只需更新GUImap。這樣一來,上下文敏感的測試腳本將非常容易地被重復使用。執(zhí)行測試時只需要回放測試腳本?;胤艤y試腳本的過程,就是WR模擬一個用戶使用鼠標選取對象、用鍵盤輸入數(shù)據(jù)的操作過程。WR從GUImap中讀取對象描述,并在被測軟件中查找符合這些描述的對象。2023/6/4模擬模式模擬模式記錄鼠標點擊、鍵盤輸入和鼠標在二維平面上(x軸、y軸)的精確運動軌跡。執(zhí)行測試時,WR讓鼠標根據(jù)軌跡運動。模擬模式對于那些需要追蹤鼠標運動的測試非常有用,例如畫圖軟件。2023/6/4WinRunner的測試過程WinRunner的測試流程分為以下六個階段:創(chuàng)建GUIMap:識別應用程序的GUI對象創(chuàng)建測試:建立測試腳本調試測試:對測試腳本除錯(debug)執(zhí)行測試:在新版應用程序執(zhí)行測試腳本查看測試結果報告發(fā)現(xiàn)的錯誤2023/6/4樣本軟件WinRunner

中附帶了一個用于航班預定的樣本軟件FlightReservation。該樣本軟件有兩個版本Flight4A和Flight4B,其中Flight4A版本是正常的軟件,F(xiàn)light4B版本中則有意識加入了一些錯誤。樣本軟件的登錄:可以使用任意用戶名(長度至少為4)登錄FlightReservation軟件,密碼為Mercury。2023/6/42使用WinRunner啟動WinRunnerWinRunner主窗口測試窗口加載WinRunner插件2023/6/4啟動winrunner開始->程序->winrunner選擇要安裝的插件。免費提供了上述四種。其他單獨需要購買。2023/6/42、(本窗口)你可以使用此窗口去錄制測試,或編輯腳本1、WinRunner主窗口,顯示所有打開的測試3、工具條快捷按鈕,幫助你快速打開、運行或保存測試4、用戶自定義工具欄,通過“tools”菜單設置5、狀態(tài)欄,顯示當前運行狀態(tài)或所選擇的命令2023/6/4測試腳本2023/6/43GUI對象的識別和GUIMap文件WinRunner如何識別應用程序中的GUI對象使用tools->GUISpy查看GUI對象的屬性使用insert->RapidTestScriptWizard學習對象并產生測試腳本(只在Gloable

模式下有效)使用tools->GUImapeditor查看對GUI對象進行維護2023/6/4運用SPY識別GUI對象運行“飛機預定票程序”。出現(xiàn)下圖:2023/6/4運行WinRunner,選擇File>New。打開GUISPY。如圖:2023/6/4捕捉到的信息2023/6/4GUIMap(界面地圖)的兩種方式進入WinRunner,選中如圖所示菜單:GUIMAP文件就是用于記錄GUI對象屬性的文件,因為其中包含了位置信息,所以用一個MAP來表示2023/6/4GlobalGUIMapFile:多個測試腳本共享同一個GUIMapFile,用戶要手工保存和加載使用的GUIMapFile。這是WR的默認模式。GUIMapFilePerTest:每次新建測試就自動創(chuàng)建一個GUIMapFile。WR會在用戶保存測試、打開測試時,自動保存和自動加載GUIMapFile。重新設定GUIMapFile模式后,必須重新啟動WR才能讓設定生效。2023/6/4兩種模式的比較GUIMapFilePerTestGlobalGUIMapFile優(yōu)點1.每個測試都有自帶的GUIMapFile2.使用方便,保存和加載GUIMapFile都是自動完成3.作為單次測試,容易維護和更新(就是重新錄一次)1.如果對象或窗體的屬性改變,只需要修改在GUIMapFile里對應的屬性2.容易維護和更新(無需重新錄制)缺點一旦軟件GUI變更,每個測試的GUIMapFile都要重新錄制要記住保存和加載使用的GUIMapFile建議如果用戶對WR沒有經驗或被測軟件的GUI已經固定,可以采用這種模式。如果用戶是有經驗的WR使用者或被測軟件的GUI經常變化,最好使用這種模式。2023/6/4GlobalGUIMapFile模式的使用關于GlobalGUIMapFile模式

使用這種模式,最好是使用RapidTestScriptWizard在錄制腳本前讓WR一次性的學習被測軟件中所有的GUI對象。如果GUI發(fā)生變化,再用GUIMapEditor來單獨學習發(fā)生變化的窗體或對象,并以此更新GUIMap。2023/6/4GlobalGUIMapFile模式的使用(續(xù))讓WinRunner學習GUI

在GlobalGUIMapFile模式,WR可以通過以下三種方式學習被測軟件的GUI:(1)使用RapidTestScriptWizard學習被測軟件每個窗體中所有GUI對象的屬性。(2)使用GUIMapEditor學習單個GUI對象、窗體或某個窗體中所有GUI對象的屬性。如果軟件開發(fā)過程中GUI改變了,用戶可以使用這種方式更新GUIMap。(3)通過錄制腳本的方式學習被測軟件中被錄制(被操作)的那部分的所有GUI對象的屬性。2023/6/4使用RapidTestScriptWizard學習GUImap注意問題:不能打開過多窗口(IE,powerpoint等等。最好把與測試無關的窗口都關閉)要使用RapidTestScriptwizard(該向導只能在GlobalGUIMapFile模式下使用),點選Insert->RapidTestScriptwizard…,將打開該向導的歡迎窗口。在錄制腳本前使用RapidTestScriptwizard一次性學習被測軟件所有的GUI對象,將生成并保存GUImap文件。以后在腳本開頭部分使用GUI_load語句就可以加載這個GUImap文件。2023/6/42023/6/42023/6/42023/6/4點擊手指銨鈕,移動鼠標到“飛機預定票系統(tǒng)”窗口,如下:(注意:鼠標形狀是手指形狀和選中窗口的邊框是處于閃爍狀態(tài))2023/6/4將其中的CheckBox全部去掉)2023/6/4按“next”進下一步,如圖:(按默認值)2023/6/4選中“EXPRESS”,單擊“Learm”按鈕這時“飛機預定票系統(tǒng)“窗口將開始工作(不斷閃爍),記錄所有UI的狀態(tài)及相關信息。(同時左上角將有個信息框指示工作狀態(tài))當窗口停止閃爍時,出現(xiàn)如下提示:(選中“NO“進行下一步)2023/6/42023/6/42023/6/42023/6/4使用GUIMapEditor學習GUI使用該功能可以打開、保存GUImap,學習GUI對象。點選Tools->GUIMapEditor…,打開GUIMap編輯器。

2023/6/4GlobalGUIMapFile模式的使用(續(xù))保存GUIMap當用戶用錄制的方式學習GUI對象時,對象的描述就被添加到臨時GUIMap文件中。用戶啟動WR時,包含前一次測試內容的臨時文件就被加載。要避免在新的測試中把有價值的GUI信息覆蓋掉,用戶必須把臨時GUIMap文件保存在一個永久的GUIMap文件中。操作演示:使用GUIMapEditor保存GUIMap2023/6/4GlobalGUIMapFile模式的使用(續(xù))加載GUIMap文件WR把對象的信息保存在一個GUIMap文件中。當用戶需要用GUIMap文件來尋找對象時,用戶必須將文件加載到GUIMap中,而且必須在測試開始前加載合適的GUIMap文件。在WR中有兩種方法可以加載GUIMap文件:(1)使用GUI_load功能加載GUIMap文件(不做介紹)(2)使用GUIMapEditor加載GUIMap文件注意:如果用戶用GUIMapFileperTest模式,則不能手工加載或卸除GUImap文件。2023/6/4使用GUIMapEditor加載GUIMap文件2023/6/42023/6/42023/6/4GUIMapFilePerTest模式的使用關于GUIMapFilePerTest模式使用GUIMapFileperTest模式,用戶不需要教WR去學習被測軟件的GUI,也不需要保存或加載GUIMap文件。在這種模式下,WR會自動處理所有與GUIMapFile有關的動作:在用戶創(chuàng)建新測試時自動創(chuàng)建一個新的GUIMap文件;在用戶保存測試時自動保存GUIMap文件;在用戶打開測試時自動加載GUIMap文件。注意:某些功能在這種模式下會被禁用。2023/6/4GUIMapFilePerTest模式的使用(續(xù))在GUIMapFilePerTest模式下工作在這種模式下,WR通過錄制腳本的方式學習被測軟件的GUI。如果GUI發(fā)生變化,用戶可以用GUIMapEditor更新每個測試的GUIMap,用戶無須加載或保存GUIMap文件。注意:如果用戶改變了對象的邏輯名,則必須更新腳本。GUIMapFilePerTest模式要點不要在GUIMapEditor里保存用戶對GUIMap文件的修改。不要手工加載或卸除GUIMap文件。2023/6/44編輯GUIMapWR使用GUIMap來標識和查找GUI對象。一旦被測軟件的GUI改變了,用戶就必須更新GUIMap中對象的描述。用戶有兩種更新GUIMap的方法:在測試運行中使用Runwizard:

測試中如果WR無法定位對象時,就會自動打開Runwizard,它會指導用戶識別對象并把對象的描述更新到GUIMap里。用GUIMapEditor手工編輯GUIMap:在用戶更新GUIMap前,GUIMap必須先被加載。2023/6/4RunWizardRunwizard(運行指南)可以在測試運行中檢測被測軟件GUI的變化:當WR無法定位對象時,它會被自動打開。Runwizard會提示用戶指向對象,確定該對象沒有被發(fā)現(xiàn)的原因,然后提供解決方案。多數(shù)情況下,它會自動給GUIMap添加新的描述或修改已有描述。當這個過程結束,測試將繼續(xù)。下次執(zhí)行測試時,WR就會找到這個對象了。2023/6/4GUIMapEditorGUIMapEditor提供了兩種模式來查看GUIMap的內容:GUIMap:可以讓用戶看到整個GUIMap中所有的窗體和對象。GUIFiles:提供一個GUIFile的文件清單,用戶可以方便的查看單個GUIMap文件的內容。在GUIMapEditor的“view”菜單中提供了這兩種查看模式的轉換。2023/6/4修改邏輯名和物理描述在GUIMapEditor中用戶可以修改對象的邏輯名或物理描述。當對象被賦予的邏輯名太長或含義不清晰時,就需要修改邏輯名使腳本容易閱讀。當對象屬性值變化時,就需要修改物理描述。操作演示:在GUIMapEditor中修改對象的邏輯名和物理描述2023/6/4在文件間復制和移動對象用戶可以用從一個GUImap文件復制或移動GUI對象到另一個GUImap文件的方式更新GUImap文件。注意:用戶只能從一個被打開但是未被加載的GUImap文件中復制對象。如果用戶使用GUIMapFileperTest模式,就不可以手工打開或在文件之間復制或移動對象。操作演示:在GUIMap文件間復制和移動對象2023/6/4操作演示在GUIMapFile里找到對象在多個GUIMapFile里找到對象在GUIMapFile里手工添加對象從GUIMapFile里刪除對象清除GUIMapFile篩選顯示對象保存GUI的變更2023/6/45學習虛擬對象被測軟件中可能包含位圖,WR錄制對這些位圖的操作時使用win_mouse_click語句。通過把位圖定義成虛擬對象(virtualobject),用戶可以讓WR像對待GUI對象那樣處理它們。依據(jù)位圖在被測軟件中的行為表現(xiàn),用戶可以創(chuàng)建虛擬pushbuttons、radiobuttons、checkbuttons、lists

或tables。如果這些類型都不適合,用戶可以創(chuàng)建一個屬于綜合類的虛擬對象。操作演示:使用VirtualObjectWizard定義虛擬對象2023/6/4腳本錄制的兩種模式上下文敏感模式模擬模式2023/6/4上下文敏感模式錄制測試腳本啟動WinRunner

并創(chuàng)建一個新測試,選擇File>New,新測試文件打開。工作在全局用戶圖形界面繪圖文件模式下,確定GUIMAP文件被加載(否則不能錄制)。選擇Tools>GUIMapEditor,GUIMAP文件編輯器被打開,在其中選擇View>GUIFiles查看flight4a.GUI是否包含在GUI文件列表中,如果這個文件沒有被加載,需要選擇File>Open并指定此文件打開2023/6/4上下文敏感模式錄制測試腳本運行“飛機定票系統(tǒng)”(Flight4A)Password:mecury,出現(xiàn)下圖:2023/6/4錄制一個腳本,以“上下文敏感”(ContextSensitive)模式錄制。在WinRunner中,選擇Create>Record-Contextsensitive(F2)或者選中工具條上的Record按鈕。狀態(tài)條也會告訴你所處的錄制模式。2023/6/42023/6/4測試腳本的運行與測試結果的分析確認航班預約應用程序在桌面上打開。將航班預約應用程序和WinRunner重新排放,使它們在桌面上同時可見。確認在WinRunner中的測試運行模式為Verify校驗模式。選擇從頭開始運行:選擇Test>RunfromTop或點擊FromTop按鈕。運行測試對話框打開。接受默認的文件夾名稱res1。選擇Displaytestresultsatendofrun單選框。單擊OK按鈕,WinRunner

立刻開始運行這個測試。2023/6/42023/6/4測試腳本運行的三種方式Verifymode:檢查應用程序;Debugmode:使用這種方式來幫助用戶識別測試腳本中的bug;Updatemode:使用這種方式來更新測試腳本的期望結果或創(chuàng)建一個新的期望結果文件夾。

2023/6/4查看測試結果2023/6/42023/6/4創(chuàng)建測試過程總結用戶可以用錄制或編程的方式創(chuàng)建測試。通常是結合以上兩種方式創(chuàng)建測試腳本:首先錄制一個基礎測試腳本——用戶對被測軟件進行操作,TSL語言記錄下這些操作;隨后用戶可以在錄制的測試腳本中修改、添加功能等。創(chuàng)建測試腳本的主要步驟:(1)決定用戶想要測試的功能點,確定用戶想在腳本中使用的檢查點和同步點。(2)在測試屬性對話框里把測試相關的信息文檔化。(3)選擇錄制模式,并錄制。(4)給測試分配一個名字并保存。2023/6/4關于檢查點檢查點可以讓用戶比較軟件當前版本和以前版本的區(qū)別。錄制測試時,在用戶需要檢查軟件反應的地方插入檢查點;插入檢查點后,WR會收集一套性能指標,在測試運行時對其一一驗證。在腳本中可以插入四類檢查點:GUI檢查點檢驗GUI對象信息。位圖檢查點做一個窗體或區(qū)域的截圖,并把這張圖片和以前版本進行比較。文本檢查點讀取GUI對象和位圖中的文本,使用戶可以檢驗文本內容。數(shù)據(jù)庫檢查點檢查一定數(shù)量的行和列組成的集合(這個集合由用戶在數(shù)據(jù)庫中創(chuàng)建)的內容。2023/6/4插入檢查點2023/6/4插入檢查點后的測試運行結果2023/6/4關于同步點同步點用來處理測試運行中可能發(fā)生的時間控制和窗體位置等問題。當WR執(zhí)行到同步點時,會暫停執(zhí)行以等待應用程序某些狀態(tài)的改變后,再繼續(xù)執(zhí)行腳本。何時應該使用同步點?執(zhí)行測試時,所測試的應用程序每次操作的響應時間并不一定,導致執(zhí)行輸入動作的時間也需要等待。例如:從數(shù)據(jù)庫取得數(shù)據(jù)、等待一個窗口開啟、等待某個狀態(tài)訊息出現(xiàn)等動作可能會時快時慢,如果應用程序響應時間超過WR設置的等待時間,則測試執(zhí)行就可能會失敗。2023/6/4關于數(shù)據(jù)驅動測試如果用戶想用多組數(shù)據(jù)測試相同的操作步驟,用戶可以創(chuàng)建數(shù)據(jù)驅動測試。測試會循環(huán)執(zhí)行指定的次數(shù),每次執(zhí)行都由不同的數(shù)據(jù)驅動。為了使WR可以使用這些數(shù)據(jù),用戶必須在測試腳本中建立和數(shù)據(jù)的聯(lián)系,這就叫測試參數(shù)化。測試所需的多組數(shù)據(jù)會被存儲在一個數(shù)據(jù)表中。具體操作時,用戶可以手動修改測試腳本或者用DataDriverWizard來參數(shù)化測試以及把數(shù)據(jù)儲存到表格中。2023/6/4計劃一個測試確認將要測試的功能點。最好設計簡短、測試單一功能點的測試;盡量不要設計繁長、一次涉及多個功能點的測試。決定要在測試中使用的檢查點和同步點。如果計劃使用錄制的方式,就要決定哪個部分用Analog模式,哪個部分用ContextSensitive模式。決定在腳本中添加哪些代碼,如循環(huán)、數(shù)組或自定義功能。2023/6/4測試信息文檔化創(chuàng)建測試前,用戶可以把測試相關信息寫在測試屬性(TestProperties)對話框的綜合和描述欄里。用戶可以輸入測試創(chuàng)建者的名字、測試類型、對于測試的詳細描述和功能描述文檔;用戶還可以通過測試屬性對話框來確定測試中使用的插件、給測試分配一個數(shù)據(jù)表、定義測試變量、把測試作為一個編譯過的模塊等。操作演示:使用TestProperties對話框來文檔化測試信息2023/6/42023/6/4Winrunner完整實驗上面將winrunner

的基本使用過程做了介紹下面是完整的實驗流程2023/6/4錄制測試腳本(續(xù))操作演示:錄制ContextSensitive模式的測試腳本1、啟動WR,并加載GUIMapFile(flight4a.gui)2、啟動Flight4A,并登錄3、開始以ContextSensitive模式錄制測試腳本4、開啟3號訂單5、停止錄制6、儲存測試腳本為lesson32023/6/4錄制測試腳本(續(xù))操作演示:錄制Analog模式的測試腳本1、打開lesson3測試腳本,將光標移到最后一行2、開始以ContextSensitive模式錄制測試腳本3、打開傳真訂單窗口,輸入FaxNumber:41555512344、勾選“SendSignaturewithorder”5、在ContextSensitive模式下錄制簽名動作6、清除簽名7、將FaxOrder窗口移動到其它位置2023/6/4錄制測試腳本(續(xù))操作演示:錄制Analog模式的測試腳本(續(xù))8、使用F2切換到Analog模式下錄制簽名動作9、再按F2切換回ContextSensitive模式,并將訂單傳真出去10、停止錄制11、保存測試腳本lesson312、保存更新后的GUIMapFile到flight4a.gui操作演示:執(zhí)行測試腳本lesson3,并分析測試結果2023/6/47同步點操作演示:在FlightReservation中建立一張新的訂單,并新增到數(shù)據(jù)庫中變更預設等待時間的設定如何識別何種問題需要以同步點解決加入同步點執(zhí)行測試腳本并檢視結果2023/6/4操作演示錄制測試腳本1、啟動WR,并加載GUIMapFile(flight4a.gui)2、啟動Flight4A,并登錄3、開始以ContextSensitive模式錄制測試腳本4、建立新的訂單5、填入航班與旅客資料6、點選“InsertOrder”,將訂單新增到數(shù)據(jù)庫中7、點選“DeleteOrder”,刪除剛才新增的訂單8、停止錄制,并保存測試腳本為lesson42023/6/4操作演示變更預設等待時間的設定1、點選Tools->GeneralOptions…2、選取Run->Settings3、將10000msec改成1000msec(1秒)4、按下“OK”如何識別何種問題需要以同步點解決1、啟動WR,并加載lesson4測試腳本

溫馨提示

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

評論

0/150

提交評論