2008軟件測試技術-chap7_第1頁
2008軟件測試技術-chap7_第2頁
2008軟件測試技術-chap7_第3頁
2008軟件測試技術-chap7_第4頁
2008軟件測試技術-chap7_第5頁
已閱讀5頁,還剩69頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

性能測試工具簡介1LoadRunner簡介

2使用LoadRunner進行負載/壓力測試

3主要內容LoadRunner測試實例

41第一頁,編輯于星期一:八點三十七分。7.1性能測試工具簡介P127性能測試的工具種類可簡單劃分為:負載壓力測試工具資源監(jiān)控工具故障定位工具調優(yōu)工具2第二頁,編輯于星期一:八點三十七分。1、負載壓力測試工具通過錄制、回放腳本、模擬多用戶同時訪問被測試系統(tǒng),制造負載,產生并記錄各種性能指標,生成分析結果,從而完成性能測試的任務。主流的負載性能測試工具有:

Compuware公司的QALoadSilkPerformerLoadRunnerWebRunnerOpenSTAWAS

3第三頁,編輯于星期一:八點三十七分。2、資源監(jiān)控工具

系統(tǒng)壓力測試過程中的一個重要環(huán)節(jié),在相關的測試工具中基本上都有很多的集成。只是不同的工具之間,監(jiān)控的中間件、數據庫、主機平臺的能力以及方式各有差異。而這些監(jiān)控工具更大程度上都依賴于被監(jiān)控平臺自身的數據采集能力,目前的絕大多數的監(jiān)控工具基本上是直接從中間件、數據庫以及主機自身提供的性能數據采集接口獲取性能指標。

不同的應用平臺有自身的監(jiān)控命令以及控制界面第三方的監(jiān)控工具相應地對一些系統(tǒng)平臺的監(jiān)控進行了集成。4第四頁,編輯于星期一:八點三十七分。3、故障定位工具以及調優(yōu)工具

故障定位工具能更精細的對負載壓力測試中暴露的問題進行故障根源分析。比如Loadrunner模塊中添加的診斷以及調優(yōu)模塊、Quest公司的PerformaSure、Compuware的Vantage套件以及CA公司收購的Wily的Introscope工具等等

5第五頁,編輯于星期一:八點三十七分。7.2LoadRunner簡介P128LoadRunner是一種預測系統(tǒng)行為和性能的工業(yè)標準級負載測試工具。通過以模擬上千萬用戶實施并發(fā)負載及實時性能監(jiān)測的方式來確認和查找問題,能夠對整個企業(yè)架構進行測試。通過使用LoadRunner,企業(yè)能最大限度地縮短測試時間,優(yōu)化性能和加速應用系統(tǒng)的發(fā)布周期。6第六頁,編輯于星期一:八點三十七分。7.2.1LoadRunner的基本原理LoadRunner啟動以后,在任務欄會有一個Agent進程,通過Agent進程,監(jiān)視各種協(xié)議的Client與Server端的通訊,用LoadRunner的一套C語言函數來錄制腳本,然后LoadRunner調用這些腳本向服務器端發(fā)出請求,接受服務器的響應。7第七頁,編輯于星期一:八點三十七分。7.2.2創(chuàng)建虛擬用戶P129使用LoadRunner的VirtualUserGenerator,可以很簡便地創(chuàng)立起系統(tǒng)負載。該引擎能夠生成虛擬用戶,以虛擬用戶的方式模擬真實用戶的業(yè)務操作行為。它先記錄下業(yè)務流程(如下訂單或機票預定),然后將其轉化為測試腳本。可以對測試腳本進行參數化操作,這一操作能利用幾套不同的實際發(fā)生數據來測試應用程序,從而反映出系統(tǒng)的負載能力。8第八頁,編輯于星期一:八點三十七分。LoadRunner的Controller能很快組織起多用戶的測試方案Controller的Rendezvous功能提供一個互動的環(huán)境,能建立起持續(xù)且循環(huán)的負載,又能管理和驅動負載測試方案可用它的日程計劃服務來定義用戶在什么時候訪問系統(tǒng)以產生負載??捎肅ontroller來限定負載方案,所有的用戶同時執(zhí)行一個動作來模擬峰值負載的情況能監(jiān)測系統(tǒng)架構中各個組件的性能來幫助客戶決定系統(tǒng)的配置7.2.3創(chuàng)建真實的負載P1299第九頁,編輯于星期一:八點三十七分。LoadRunner內含集成的實時監(jiān)測器,在負載測試過程的任何時候,都可以觀察到應用系統(tǒng)的運行性能。利用LoadRunner的ContentCheckTM,可以判斷負載下的應用程序功能是否正常。7.2.4實時監(jiān)控P13010第十頁,編輯于星期一:八點三十七分。測試完畢后,LoadRunner收集匯總所有的測試數據,并提供高級的分析和報告工具,以便迅速查找到性能問題并追溯原由。使用LoadRunner的Web交易細節(jié)監(jiān)測器,可以了解到將所有的圖像、框架和文本下載到每一網頁上所需的時間。另外,Web交易細節(jié)監(jiān)測器分解用于客戶端、網絡和服務器上端到端的反應時間,便于確認問題,定位查找真正出錯的組件。7.2.5分析結果11第十一頁,編輯于星期一:八點三十七分。負載測試是一個重復過程,每次處理一個出錯情況,都需要對應用程序在相同的方案下,再進行一次負載測試。7.2.6重復測試12第十二頁,編輯于星期一:八點三十七分。1、EnterpriseJavaBeans的測試2、支持無線應用協(xié)議3、支持MediaStream應用4、完整的企業(yè)應用環(huán)境的支持7.2.7其他特性13第十三頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試P131圖7.1LoadRunner測試過程圖14第十四頁,編輯于星期一:八點三十七分。7.3.1制定負載測試計劃P1321、分析應用程序(AnalyzetheApplication)圖7.2制定負載測試計劃步驟圖(1)畫出系統(tǒng)的組成圖(2)描述系統(tǒng)配置(3)分析最普遍的使用方法15第十五頁,編輯于星期一:八點三十七分。2.確定測試目標(DefiningTestingObjectives)表7.1如何確定測試目標16第十六頁,編輯于星期一:八點三十七分。表7.2不同階段的測試內容17第十七頁,編輯于星期一:八點三十七分。3.計劃如何執(zhí)行LoadRunner

確定要使用LoadRunner度量哪些性能參數,根據測量結果計算哪些參數,從而可以確定Vusers(虛擬用戶)的活動,最終可以確定哪些是系統(tǒng)的瓶頸等。選擇測試環(huán)境,測試機器的配置情況等。

18第十八頁,編輯于星期一:八點三十七分。開發(fā)測試腳本要使用VuGen組件。測試腳本要完成的內容有:每一個虛擬用戶的活動定義結合點定義事務7.3.2開發(fā)負載測試腳本p13319第十九頁,編輯于星期一:八點三十七分。開發(fā)測試腳本步驟:20第二十頁,編輯于星期一:八點三十七分。1.錄制測試腳本啟動VisualUserGenerator,通過菜單【File】—>【New】新建一個用戶腳本;21第二十一頁,編輯于星期一:八點三十七分。在彈出的菜單中選擇合適的通訊的協(xié)議。22第二十二頁,編輯于星期一:八點三十七分。在菜單欄中點【Vuser】——>【StartRecording】或者在工具欄中點按鈕,都可以啟動錄制腳本的命令,打開錄制窗口。23第二十三頁,編輯于星期一:八點三十七分。錄制完成后,按下按鈕,結束錄制。VuGen自動生成用戶腳本,退出錄制過程。24第二十四頁,編輯于星期一:八點三十七分。25第二十五頁,編輯于星期一:八點三十七分。測試腳本錄制/分配原則:

腳本越小越好

選擇使用頻率最高的。

選擇你所需要的進行錄制。

26第二十六頁,編輯于星期一:八點三十七分。2.完善測試腳本⑴插入事務插入事務操作可在錄制過程中進行,也可在錄制結束后進行LoadRunner允許在腳本中插入不限數量的事務在需要定義事務的操作前面,在工具欄點按鈕,輸入該事務的名稱

27第二十七頁,編輯于星期一:八點三十七分。插入事務的“開始點”后,應在需要定義事務的操作后面插入事務的“結束點”。可工具欄點按鈕

28第二十八頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試⑵插入集合點插入集合點是為了衡量在加重負載的情況下服務器的性能情況。

在LoadRunner中可在提交數據操作前面加入集合點,這樣當虛擬用戶運行到提交數據的集合點時,LoadRunner就會檢查同時有多少用戶運行到集合點在需要插入集合點前面,在工具欄中點按鈕

29第二十九頁,編輯于星期一:八點三十七分。⑶插入注釋

插入注釋最好是在錄制過程中

在需要插入注釋的前面,在工具欄中點按鈕

30第三十頁,編輯于星期一:八點三十七分。⑷參數化輸入參數化輸入可更真實模擬實際環(huán)境,可使腳本的長度變短

參數化的兩項任務:①在腳本中用參數取代常量值②設置參數的屬性以及數據源

31第三十一頁,編輯于星期一:八點三十七分。⑷參數化輸入32第三十二頁,編輯于星期一:八點三十七分。⑷參數化輸入33第三十三頁,編輯于星期一:八點三十七分。⑷參數化輸入34第三十四頁,編輯于星期一:八點三十七分。⑷參數化輸入35第三十五頁,編輯于星期一:八點三十七分。⑷參數化輸入36第三十六頁,編輯于星期一:八點三十七分。37第三十七頁,編輯于星期一:八點三十七分。⑷參數化輸入38第三十八頁,編輯于星期一:八點三十七分。⑸插入函數VuGen中可以使用C語言中比較標準的函數和數據類型,語法和C語言相同。LoadRunner提供的標準函數:lr_eval_string、lr_save_string

39第三十九頁,編輯于星期一:八點三十七分。⑹插入Text/Imag檢查點

在進行壓力測試時,為了檢查Web服務器返回的網頁是否正確,VuGen允許插入Text/Imag檢查點,這些檢查點驗證網頁上是否存在指定的Text或者Imag,還可以在比較大的壓力測試環(huán)境中測試被測的網站功能是否保持正確。40第四十頁,編輯于星期一:八點三十七分。⑹插入Text/Imag檢查點

在進行壓力測試時,為了檢查Web服務器返回的網頁是否正確,VuGen允許插入Text/Imag檢查點,這些檢查點驗證網頁上是否存在指定的Text或者Imag,還可以在比較大的壓力測試環(huán)境中測試被測的網站功能是否保持正確。VuGen在測試Web時,有兩種視圖方式:TreeView/ScriptView。

41第四十一頁,編輯于星期一:八點三十七分。⑹插入Text/Imag檢查點

42第四十二頁,編輯于星期一:八點三十七分。⑹插入Text/Imag檢查點

43第四十三頁,編輯于星期一:八點三十七分。⑹插入Text/Imag檢查點

44第四十四頁,編輯于星期一:八點三十七分。⑹插入Text/Imag檢查點

45第四十五頁,編輯于星期一:八點三十七分。⑹插入Text/Imag檢查點

46第四十六頁,編輯于星期一:八點三十七分。⑹插入Text/Imag檢查點

47第四十七頁,編輯于星期一:八點三十七分。3.配置Run-TimeSetting在菜單欄點【Vuser】——>【RunningTime】打開Run-TimeSetting窗口。48第四十八頁,編輯于星期一:八點三十七分。3.配置Run-TimeSetting

49第四十九頁,編輯于星期一:八點三十七分。3.配置Run-TimeSetting

50第五十頁,編輯于星期一:八點三十七分。4.運行測試腳本執(zhí)行“運行”命令,VuGen先編譯腳本,檢查是否有語法等錯誤。如果有錯誤,VuGen將會提示錯誤。雙擊錯誤提示,VuGen能夠定位到出現(xiàn)錯誤的那一行。為了驗證腳本的正確性,還可調試腳本,如在腳本中加斷點等。51第五十一頁,編輯于星期一:八點三十七分。4.運行測試腳本52第五十二頁,編輯于星期一:八點三十七分。5.VuGen其他有用的功能⑴壓縮腳本文件在菜單欄點【File】——>【ZipandEmail】:把腳本所有文件壓縮并作為附件發(fā)送郵件;在菜單欄點【File】——>【ExporttoZipFile】:壓縮腳本所有文件到一個ZIP文件。53第五十三頁,編輯于星期一:八點三十七分。5.VuGen其他有用的功能⑵tools菜單【TestDirectorConnection】:連接TD數據庫可以把腳本添加到TD數據庫中;【CreateControllerScenario】:啟動Controller,并把當前腳本添加到場景中;【CompareWithVuser】:比較兩個腳本。

54第五十四頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景

運行場景描述在測試活動中發(fā)生的各種事件。一個運行場景包括一個運行虛擬用戶活動的LoadGenerator機器列表、一個測試腳本的列表以及大量的虛擬用戶和虛擬用戶組。使用Controller來創(chuàng)建運行場景。在開始菜單中啟動Controller程序,出現(xiàn)NewScenario窗口。55第五十五頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景在新建場景的窗口選擇一種場景類型:1.1ManualScenario:該項要完全手動的設置場景。1.2ManualScenariowithPercentageMode:該項只有在“ManualScenario”選中的情況下才能選擇。選擇該項后,在場景中需要定義要使用的虛擬用戶的總數,LoadGeneratormachine機器集,然后為每一個腳本分配要運行的虛擬用戶的百分比。2.Goal—OrientedScenario:在測試計劃中,如果測試計劃是要達到某個性能指標,選擇該項,LoadRunner將基于這個目標,自動創(chuàng)建一個場景。56第五十六頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景1.選擇場景類型為ManualScenario⑴選擇VuserGroups

在可選腳本框中,選中需要的腳本,點【Add】將其添加到場景操作中。如果需要在已經打開的場景中添加腳本,直接點擊【ScriptPath】欄下的下拉菜單。57第五十七頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景1.選擇場景類型為ManualScenario⑵添加LoadGeneratorMachines圖7.36LoadGenerators窗口58第五十八頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景1.選擇場景類型為ManualScenario⑶添加虛擬用戶

點【Quantity】欄下的文本框設置虛擬用戶數。

圖7.38設置虛擬用戶數

59第五十九頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景1.選擇場景類型為ManualScenario⑷設置Schedule點【EditSchedule】按鈕,進入Schedule設置窗口。圖7.39ScheduleBuilder窗口(【Rampup】標簽頁

)60第六十頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景1.選擇場景類型為ManualScenario⑷設置Schedule點【EditSchedule】按鈕,進入Schedule設置窗口。圖7.40ScheduleBuilder窗口(【Duration】標簽頁

)61第六十一頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景1.選擇場景類型為ManualScenario⑷設置Schedule點【EditSchedule】按鈕,進入Schedule設置窗口。圖7.41ScheduleBuilder窗口(【RampDown

】標簽頁

)62第六十二頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景1.選擇場景類型為ManualScenario⑷設置Schedule點【ScenarioStartTime】按鈕進入ScenarioStartTime窗口

63第六十三頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景1.選擇場景類型為ManualScenario⑸設置集合點如果在腳本中設置了集合點,還需要在Controller中設置集合點策略。在菜單中點【Scenario】——>【Rendezvous】調出設置集合點策略的窗口。圖7.43RendezvousInformation窗口

64第六十四頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景1.選擇場景類型為ManualScenario⑸設置集合點圖7.44Policy窗口

65第六十五頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景1.選擇場景類型為ManualScenario⑹設置結果文件保存路徑

在菜單中點【Results】—>【ResultsSettings】調出結果文件的保存路徑,該路徑最好在每次場景運行前重新設置。圖7.45SetResultsDirectory窗口66第六十六頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景2.選擇場景類型為ManualScenariowithPercentageMode圖7.46ManualScenariowithPercentageMode場景

67第六十七頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.3創(chuàng)建運行場景3.選擇場景類型為Goal—OrientedScenario

點【EditScenarioGoal】按鈕,編輯該場景的目標。

⑴在【GoalPro】中選擇目標的種類每次場景運行只能設置一個目標。⑵【ScenarioSettings】標簽頁68第六十八頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.5監(jiān)視場景在運行過程中,LoadRunner可以監(jiān)視它所支持的服務器的資源,包括:1.SystemResource:包括windows平臺,Unix平臺等2.WebServer:包括Apache、IIS、Sun的iplanet等3.Applicationserver:包括Weblogic、WebSphere等4.Databaseserver:包括DB2,Oracle,Sqlserver,Sybase等5.Java:ejb,J2ee等,需要一個ejbdetector.jar文件69第六十九頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.5監(jiān)視場景監(jiān)視場景需在Run視圖中通過添加性能計數器來實現(xiàn)圖7.54Run視圖中添加性能計數器

圖7.55計數器對話框

70第七十頁,編輯于星期一:八點三十七分。7.3使用LoadRunner進行負載/壓力測試7.3.6利用Analysis分析結果場景運行結束后,需要使用Analysis

溫馨提示

  • 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

提交評論