自動(dòng)化測(cè)試工具LoadRunner_第1頁
自動(dòng)化測(cè)試工具LoadRunner_第2頁
自動(dòng)化測(cè)試工具LoadRunner_第3頁
自動(dòng)化測(cè)試工具LoadRunner_第4頁
自動(dòng)化測(cè)試工具LoadRunner_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

自動(dòng)化測(cè)試工具LoadRunner一個(gè)系統(tǒng)的成功與否不僅看它是否能達(dá)到人們的預(yù)期而成功完成某項(xiàng)任務(wù),同時(shí)還要看系統(tǒng)的性能是否符合一定標(biāo)準(zhǔn)。系統(tǒng)的性能是一個(gè)很大的概念,覆蓋面非常廣泛,包括執(zhí)行效率、資源占用、穩(wěn)定性、安全性、兼容性、可擴(kuò)展性、可靠性等等。而利用自動(dòng)化工具則可以模擬真實(shí)用戶來操作系統(tǒng),通過這種方式來發(fā)現(xiàn)系統(tǒng)性能瓶頸的過程就叫作系統(tǒng)的性能測(cè)試。LoadRunner是一種預(yù)測(cè)系統(tǒng)行為和性能的負(fù)載測(cè)試工具,通過模擬成千上萬名用戶和實(shí)施實(shí)時(shí)性能監(jiān)測(cè)來確認(rèn)和查找問題,LoadRunner能夠?qū)φ麄€(gè)企業(yè)架構(gòu)進(jìn)行測(cè)試。通過使用LoadRunner,企業(yè)能最大限度地縮短測(cè)試時(shí)間,優(yōu)化性能和加速應(yīng)用系統(tǒng)的發(fā)布周期。a】LoadRunner特性輕松創(chuàng)建虛擬用戶:使用LoadRunner的VirtualUserGenerator,我們能很簡(jiǎn)便地創(chuàng)立起系統(tǒng)負(fù)載。該引擎能夠生成虛擬用戶,以虛擬用戶的方式模擬真實(shí)用戶的業(yè)務(wù)操作行為。它先記錄下業(yè)務(wù)流程(如下訂單或機(jī)票預(yù)定),然后將其轉(zhuǎn)化為測(cè)試腳本。利用虛擬用戶,我們可以在Windows,UNIX或Linux機(jī)器上同時(shí)產(chǎn)生成千上萬個(gè)用戶訪問。創(chuàng)建真實(shí)的負(fù)載:Controller的Rendezvous功能提供一個(gè)互動(dòng)的環(huán)境,在其中既能建立起持續(xù)且循環(huán)的負(fù)載,又能管理和驅(qū)動(dòng)負(fù)載測(cè)試方案。而且,我們還可以利用它的日程計(jì)劃服務(wù)來定義用戶在什么時(shí)候訪問系統(tǒng)以產(chǎn)生負(fù)載。實(shí)時(shí)監(jiān)測(cè)器:LoadRunner內(nèi)含集成的實(shí)時(shí)監(jiān)測(cè)器,在負(fù)載測(cè)試過程的任何時(shí)候,我們都可以觀察到應(yīng)用系統(tǒng)的運(yùn)行性能。這些性能監(jiān)測(cè)器為我們實(shí)時(shí)顯示交易性能數(shù)據(jù)(如響應(yīng)時(shí)間)和其它系統(tǒng)組件包括applicationserver,webserver,網(wǎng)路設(shè)備和數(shù)據(jù)庫等的實(shí)時(shí)性能。分析結(jié)果:一旦測(cè)試完畢后,LoadRunner收集匯總所有的測(cè)試數(shù)據(jù),并為我們提供高級(jí)的分析和報(bào)告工具,以便迅速查找到性能問題并追溯原由。使用LoadRunner的Web交易細(xì)節(jié)監(jiān)測(cè)器,我們可以了解到將所有的圖象、框架和文本下載到每一網(wǎng)頁上所需的時(shí)間。負(fù)載測(cè)試是一個(gè)重復(fù)過程。每次處理完一個(gè)出錯(cuò)情況,我們都需要對(duì)我們的

應(yīng)用程序在相同的方案下,再進(jìn)行一次負(fù)載測(cè)試。以此檢驗(yàn)我們所做的修正是否改善了運(yùn)行性能。[inLoadRunner為性能測(cè)試工具,在腳本錄制編輯過程中的名詞以及系統(tǒng)Analysis分析器里面有很多關(guān)于系統(tǒng)性能指標(biāo)的名詞,這里列出了一些最為常用的名詞。Rendezvous(集合點(diǎn)):集合點(diǎn)用以同步虛擬用戶以便恰好在同一時(shí)刻執(zhí)行任務(wù)。在測(cè)試計(jì)劃中,可能會(huì)要求系統(tǒng)能夠承受1000人同時(shí)提交數(shù)據(jù),在LoadRunner中可以通過在提交數(shù)據(jù)操作前面加入集合點(diǎn),這樣當(dāng)虛擬用戶運(yùn)行到提交數(shù)據(jù)的集合點(diǎn)時(shí),LoadRunner就會(huì)檢查同時(shí)有多少用戶運(yùn)行到集合點(diǎn),如果不到1000人,LoadRunner就會(huì)命令已經(jīng)到集合點(diǎn)的用戶在此等待,當(dāng)在集合點(diǎn)等待的用戶達(dá)到1000人時(shí),LoadRunner命令1000人同時(shí)去提交數(shù)據(jù),從而達(dá)到測(cè)試計(jì)劃中的需求。Transaction(事務(wù)):事務(wù)就是在腳本定義中定義的某段操作(ACTION),更確切的說,就是一段腳本語句.定義事務(wù)時(shí),首先在腳本中找到事務(wù)的開始和結(jié)束位置,然后分別插入一個(gè)事務(wù)起始標(biāo)記,這樣,當(dāng)腳本運(yùn)行的時(shí)候,LoadRunner會(huì)自動(dòng)在事務(wù)的起始點(diǎn)計(jì)時(shí),腳本在運(yùn)行到事務(wù)結(jié)束點(diǎn)時(shí)計(jì)時(shí)結(jié)束,系統(tǒng)會(huì)自動(dòng)記錄這段操作的運(yùn)行時(shí)間等性能數(shù)據(jù);在腳本運(yùn)行完畢后,系統(tǒng)會(huì)在結(jié)果信息中單獨(dú)反映每個(gè)事務(wù)運(yùn)行結(jié)果。TransactionsperSecond(每秒通過事務(wù)數(shù)/TPS):顯示在場(chǎng)景運(yùn)行的每一秒鐘,每個(gè)事務(wù)通過、失敗以及停止的數(shù)量,是考查系統(tǒng)性能的一個(gè)重要參數(shù)。通過它可以確定系統(tǒng)在任何給定時(shí)刻的時(shí)間事務(wù)負(fù)載。分析TPS主要是看曲線的性能走向。將它與平均事務(wù)響應(yīng)時(shí)間進(jìn)行對(duì)比,可以分析事務(wù)數(shù)目對(duì)執(zhí)行時(shí)間的影響。例:當(dāng)壓力加大時(shí),點(diǎn)擊率/TPS曲線如果變化緩慢或者有平坦的趨勢(shì),很有可能是服務(wù)器開始出現(xiàn)瓶頸。從用戶的角度,響應(yīng)時(shí)間=(C1+C2)+(A1+A2+A3)+(N1+N2+N3+N4);

從系統(tǒng)的角度,響應(yīng)時(shí)間包括(A1+A2+A3)+(N1+N2+N3+N4)。對(duì)于用戶能夠接受的響應(yīng)時(shí)間,在行業(yè)中一般都有369原則,即3s以內(nèi)響應(yīng)速度比較快,3s-6s能接受,9s以上不能忍受。Throughput(吞吐量):即每秒處理事務(wù)的數(shù)量??梢砸罁?jù)服務(wù)器的吞吐量來評(píng)估虛擬用戶產(chǎn)生的負(fù)載量,以及看出服務(wù)器在流量方面的處理能力以及是否存在瓶頸。HitsperSecond(每秒點(diǎn)擊數(shù)):即運(yùn)行場(chǎng)景過程中虛擬用戶每秒向Web服務(wù)器提交的HTTP請(qǐng)求數(shù)。通過它我們可以評(píng)估虛擬用戶產(chǎn)生的負(fù)載量,如將其和“平均事務(wù)相應(yīng)時(shí)間”圖做比較,可以查看點(diǎn)擊次數(shù)對(duì)事務(wù)性能產(chǎn)生的影響。通過對(duì)查看“每秒點(diǎn)擊次數(shù)”,可以判斷系統(tǒng)是否穩(wěn)定。系統(tǒng)點(diǎn)擊率下降通常表明服務(wù)器的響應(yīng)速度在變慢,需進(jìn)一步分析,發(fā)現(xiàn)系統(tǒng)瓶頸所在。HTTPResponsesperSecond(每秒HTTP響應(yīng)數(shù)):是顯示運(yùn)行場(chǎng)景過程中每秒從Web服務(wù)器返回的不同HTTP狀態(tài)代碼的數(shù)量,還能返回其它各類狀態(tài)碼的信息,通過分析狀態(tài)碼,可以判斷服務(wù)器在壓力下的運(yùn)行情況,也可以通過對(duì)圖中顯示的結(jié)果進(jìn)行分組,進(jìn)而定位生成錯(cuò)誤的代碼腳本。WebPageBreakdown(頁面分解圖):顯示某一具體事務(wù)在測(cè)試過程的響應(yīng)情況,進(jìn)而分析相關(guān)的事務(wù)運(yùn)行是否正常。4.4LoadRunner的工作機(jī)制:LoadRunner是一種企業(yè)級(jí)測(cè)試工具,它的工作機(jī)制較為復(fù)雜,掌握好LoadRunner的工作機(jī)制對(duì)于更好地掌握和使用LoadRunner有很大幫助,同時(shí)也會(huì)加深我們對(duì)LoadRunner的理解。如圖4.2為L(zhǎng)oadRunner工作機(jī)制的分解圖。Script_=1-ScenariosReports&MSWordGraphs.docScheduleMonitoringURun-timeVugenSettingsI:二『Controller■AnalysisunLoJavaClientsIEClientsilLJHTTPProtocolCapture&RecordServers/EnvironmentUnderTest.htmlInternetbrowserStart/StopDiaglogsLoadGeneratorsMSExcelVirtualUsersScript_=1-ScenariosReports&MSWordGraphs.docScheduleMonitoringURun-timeVugenSettingsI:二『Controller■AnalysisunLoJavaClientsIEClientsilLJHTTPProtocolCapture&RecordServers/EnvironmentUnderTest.htmlInternetbrowserStart/StopDiaglogsLoadGeneratorsMSExcelVirtualUsersCrystalReportsClientEmulationProbes/AgentsCopy/ypasteMercuryDiagnostics圖4.2LoadRunner工作機(jī)制LoadRunner中的Vugen通過監(jiān)聽IE客戶端與服務(wù)器之間的通信,捕捉記錄

兩者之間的信息傳遞來形成腳本。生成的腳本在Controller之中形成Scenario(場(chǎng)景),按照制定的Schedule來執(zhí)行場(chǎng)景。Controller通過控制LoadGenerators來對(duì)系統(tǒng)加載虛擬用戶,并生成分析圖表。在Analysis中可以對(duì)圖表進(jìn)行系統(tǒng)分析,并能以各種格式(兩者之間的信息傳遞來形成腳本。生成的腳本在Controller之中形成Scenario(場(chǎng)景),按照制定的Schedule來執(zhí)行場(chǎng)景。Controller通過控制LoadGenerators來對(duì)系統(tǒng)加載虛擬用戶,并生成分析圖表。在Analysis中可以對(duì)圖表進(jìn)行系統(tǒng)分析,并能以各種格式(Word、Excel、CrystalReports)打印出來。4.5Vugen4.5.1腳本產(chǎn)生的過程:1計(jì)劃錄制一個(gè)虛擬用戶腳本事務(wù)檢查點(diǎn)參數(shù)化測(cè)試建立測(cè)試目標(biāo)分析系統(tǒng)建立測(cè)試環(huán)境回放腳本驗(yàn)證腳本的正確性腳本錄制具體步驟:圖4.3腳本開發(fā)過程(1)創(chuàng)建一個(gè)新的虛擬用戶腳本,選擇Web(HTTP/HTML)協(xié)議來錄制基于瀏覽器的應(yīng)用系統(tǒng)。(2) 設(shè)置錄制選項(xiàng)。(3) 點(diǎn)擊“Startrecording”按鈕。在“Startrecording"對(duì)話框中輸入應(yīng)用系統(tǒng)網(wǎng)址并點(diǎn)擊OK按鈕。(4) 在Web系統(tǒng)中執(zhí)行用戶操作。(5) 點(diǎn)擊“StopRecording”按鈕,保存腳本。此次我們選用的基于瀏覽器的應(yīng)用系統(tǒng),即LoadRunner自帶網(wǎng)站“WebTours”。此網(wǎng)站是一個(gè)飛機(jī)訂票網(wǎng)站,可完成簡(jiǎn)單的訂票操作,操作方便簡(jiǎn)捷??紤]到LoadRunner對(duì)某一網(wǎng)站測(cè)試時(shí)需要連接網(wǎng)絡(luò),所以選用了“WebTours”,只需開啟WebServer即可。開啟方法如圖4.4:HFLoaffiurLTLerAduLeReaderXSujTiatraFDFIVTBlueSoleil呃動(dòng)精靈如12VideoFixer3.23漢化版Adv:iTLCedEmttii■電呂ApplicHFLoaffiurLTLerAduLeReaderXSujTiatraFDFIVTBlueSoleil呃動(dòng)精靈如12VideoFixer3.23漢化版Adv:iTLCedEmttii■電呂Applic:atiunsDu匚fjtiEri_tionE*唱&5P1L>:>注旺応皿曲JHT'WebToureApplication2tartWebServer圖4.4開啟web服務(wù)器4.5.2腳本的錄制:打開VirtualUserGenerator,點(diǎn)擊新建,在“Category"中選擇“Web(HTTP/HTML)”協(xié)議。一般情況下,基于瀏覽器的應(yīng)用程序推薦使用HTML-basedScript協(xié)議,不是基于瀏覽器的應(yīng)用程序推薦使用URL-basedScript,因?yàn)槲覀兪褂玫氖荓oadRunner自帶的示例網(wǎng)站,所以我們選用HTML-basedScript方式對(duì)腳本進(jìn)行錄制。點(diǎn)擊“Create”按鈕。網(wǎng)址圖4.5錄制選項(xiàng)設(shè)置完畢后點(diǎn)擊“OK”,進(jìn)入“WebTours”登錄頁面,如圖4.6:魁羽WebTourswangchenyuPasswordWebTours網(wǎng)址圖4.5錄制選項(xiàng)設(shè)置完畢后點(diǎn)擊“OK”,進(jìn)入“WebTours”登錄頁面,如圖4.6:魁羽WebTourswangchenyuPasswordWebTours用戶注冊(cè)登錄按鈕WelcometotheW已bTourssite.Tomakereservations,pleaseenteryourinfbrmationtotheleft.Ifyouhaven'tregisteredyet,signupnowtogetaccesstoallour「已sour■匚已久Toconfiguretheserveroptions,,useadministrationlink.使用管理員權(quán)限仝I在進(jìn)入此頁面后LoadRunner工具條會(huì)記錄下當(dāng)前頁面的事件數(shù)量:當(dāng)前頁面的事件個(gè)數(shù)Recoixiing…當(dāng)前錄制存放在init函數(shù)中當(dāng)前頁面的事件個(gè)數(shù)Recoixiing…當(dāng)前錄制存放在init函數(shù)中vuserinit上的債按鈕,輸入事務(wù)的名稱后點(diǎn)擊“Login”,然后點(diǎn)擊刊結(jié)束事務(wù)。上的債按鈕,輸入事務(wù)的名稱后點(diǎn)擊“Login”,然后點(diǎn)擊刊結(jié)束事務(wù)。此時(shí)我們需要虛擬用戶在進(jìn)行下一步操作的時(shí)候?qū)崿F(xiàn)同步操作,點(diǎn)擊按鈕,如圖InsertRendezvousName:|集合點(diǎn)0KCancel圖4.7LoadRunner錄制工具條1我們需要對(duì)“登錄”和“退

出”兩個(gè)功能的響應(yīng)時(shí)間做分

析,所以要添加事務(wù)對(duì)這兩個(gè)功

能進(jìn)行響應(yīng)時(shí)間的判定。在登錄

之前需要對(duì)登錄功能添加事務(wù)圖,

即“Transaction”。點(diǎn)擊錄制條圖4.8添加事物在點(diǎn)擊“Login”進(jìn)入主頁面后,將錄制位置改為“Action”。此時(shí)錄制到的事件數(shù)目也會(huì)隨之增加。如圖4.9所示。Recording...[102events}.4.10。添加集合點(diǎn)完成訂票流程后可以看到Invoice頁面,表示已經(jīng)完成訂票。完成訂票頁面的操作之后,將錄制位置改為“vuser_end”。對(duì)“退出”功能使用同樣的方法添加事務(wù)描述后,點(diǎn)擊停止■按鈕,結(jié)束此次錄制過程。LoadRunner將會(huì)形成相應(yīng)的腳本“Script”以及錄制日志“RecordingLog”。在“Script”中有三個(gè)函數(shù)分別為“vuser_init”,“Action”以及“vuser_end”。“vuser_init”為初始化函數(shù)與“vuser_end”函數(shù)配套使用。圖這兩個(gè)函數(shù)集合點(diǎn)與迭代過程,在每次腳本執(zhí)行的時(shí)候只運(yùn)行一次。而“Action”函數(shù)為主體函數(shù);可對(duì)主體操作進(jìn)行多次迭代。在對(duì)網(wǎng)站“WebTour”進(jìn)行回放過程中我們不希望每次都對(duì)登錄和退

出操作進(jìn)行多次迭代,所以把登錄和退出過程分別放在了“vuser_init”和“vuser_end出操作進(jìn)行多次迭代,所以把登錄和退出過程分別放在了“vuser_init”和“vuser_end"函數(shù)中,每次運(yùn)行腳本的時(shí)候這兩部分不隨迭代次數(shù)的增加而增加。在“Run-timeSettings-General-RunLogic"中我們要對(duì)“Action”部分進(jìn)行迭代次數(shù)的設(shè)置。如圖4.11所示,General:RunLogicIterationCountNumberofIterations:|Q-??膵Init匕號(hào)口丄呂已r_irLi-Rijtl(x4'JAction-??嘮EndT-mser可以看出隨著迭代次數(shù)的增加,只有Action部分會(huì)多次迭代,vuser_init和vuser_end部分只執(zhí)行一次。在“RecordingLog”中,我們可以看到LcgdRunn迭在錄制過程中捕獲的關(guān)于應(yīng)用系統(tǒng)客戶端與服務(wù)器之間的數(shù)據(jù)通訊:^GET/WebTours/header,html^(Sid: 1) Client -> Server : 625 bytes (Service=HTTF)(Sid: 1) Server -> Client : 164 bytes (Service=HTTF)(Sid: 1) Server 一〉 Client : 692 bytes (Service=HTTF) "GET/WebTours/header.html,表示獲取“WebTours/header.html"這樣一個(gè)網(wǎng)頁。第一行表示客戶端向服務(wù)器發(fā)送請(qǐng)求,大小為625字節(jié);第二行表示服務(wù)器向客戶端發(fā)送164字節(jié)的數(shù)據(jù)包,答復(fù)是否接受請(qǐng)求。第三行表示服務(wù)器向客戶端發(fā)送692字節(jié)的數(shù)據(jù)包,數(shù)據(jù)包內(nèi)容為“WebTours/header.html"網(wǎng)頁。4.5.3腳本的回放LastReplaySunniTigiiy點(diǎn)擊?進(jìn)行回放,在LastReplaySummary左側(cè)有回放成功與否的報(bào)告,同LastReplaySunniTigiiyResultDirectory:resultlATTENTION:Noruntimeerrorsweredetected.However,youshouldmakesurethebusinessprocesswas「已ATTENTION:Noruntimeerrorsweredetected.However,youshouldmakesurethebusinessprocesswas「已playedcorrectlyfbycomparingtheReplayandRecordedwn日pshotsintherightpane.時(shí)在右側(cè)還有錄制時(shí)和回放時(shí)網(wǎng)站的截圖(Snapshot)。在ReplayLog中可以看到關(guān)于回放中的迭代的描述,如圖4.12所示。

4.6ControllerController是LoadRunner最核心的組件,是創(chuàng)建、維護(hù)、執(zhí)行和監(jiān)控場(chǎng)景的管理中心。一個(gè)場(chǎng)景(Scenario)定義了Vuser執(zhí)行、測(cè)試目標(biāo)、控制Vuser的電腦、執(zhí)行壓力測(cè)試條件等。場(chǎng)景模式共有兩種:手工場(chǎng)景和面向目標(biāo)場(chǎng)景。手動(dòng)場(chǎng)景:手工控制多少用戶參與運(yùn)行以及在什么時(shí)候運(yùn)行;在場(chǎng)景執(zhí)行中,可以添加、啟動(dòng)和停止虛擬用戶運(yùn)行。面向目標(biāo)的場(chǎng)景:目標(biāo)可能是吞吐量、響應(yīng)時(shí)間、并發(fā)用戶數(shù);LoadRunner自動(dòng)地管理虛擬用戶;在場(chǎng)景執(zhí)行中,不能添加、啟動(dòng)和停止虛擬用戶運(yùn)行。為了能夠更精確的控制場(chǎng)景的執(zhí)行,我們選擇手動(dòng)場(chǎng)景模式。場(chǎng)景執(zhí)行計(jì)劃:圖4?13場(chǎng)景執(zhí)行計(jì)劃Design場(chǎng)景執(zhí)行計(jì)劃:圖4?13場(chǎng)景執(zhí)行計(jì)劃圖4.14場(chǎng)景腳本打開Controller,在Design頁面的左上角有控制場(chǎng)景腳本的“ScenarioScripts”,在“LoadGenerator"負(fù)載生成器里添加負(fù)載的機(jī)器名稱。若是本機(jī)手動(dòng)輸入alocalhost",若是想在另一臺(tái)機(jī)器上進(jìn)行加載,則輸入該機(jī)器的IP地址。如圖4.14圖4.14場(chǎng)景腳本在Design頁面的左下方,是整個(gè)場(chǎng)景執(zhí)行的計(jì)劃表即“GlobalSchedule",在這里可以對(duì)場(chǎng)景執(zhí)行的具體方式進(jìn)行設(shè)置。比如場(chǎng)景運(yùn)行的時(shí)間,虛擬用戶加載的個(gè)數(shù)和方式以及虛擬用戶退出執(zhí)行的方式。如圖4.15所示:在“Initialize”里面,將場(chǎng)景設(shè)置為每一個(gè)虛擬用戶在場(chǎng)景開始運(yùn)行的時(shí)候就進(jìn)行初始化。在

“StartVusers”里面,我們?cè)O(shè)置100個(gè)虛擬用戶(虛擬用戶數(shù)根據(jù)機(jī)器配置及具體項(xiàng)目而定,可高達(dá)數(shù)十萬),并且每5秒鐘加載5個(gè)虛擬用戶。在“Duration”中場(chǎng)景的執(zhí)行時(shí)間為5分鐘,這里對(duì)于測(cè)試系統(tǒng)穩(wěn)定性的情況可以設(shè)置為24小時(shí)或者2天左右的時(shí)間。在“StopVusers”中,場(chǎng)景執(zhí)行完畢之后每5秒鐘撤下10個(gè) 虛擬GlobalScheduleTotal:100VusersGlobalScheduleTotal:100VusersActionPropertiesJkIniti:ilizeIniti:±LizeeachVueerjustbetnreitfiixleSt:±rtVueereStart100Vusers:5every00:00:05(HH:MM:SS)DurtiunRutlfor00:05:00(HH:MM:SS)StopVueereStopallYusers:10every00:00:05(HH:MM:SS) fDesignRun戶。在進(jìn)行“GlobalSchedule”中設(shè)置完畢后,在Design頁面的右下角會(huì)生成對(duì)應(yīng)的加載虛擬用戶的走勢(shì)圖。如圖4.16所示。圖4.15全局計(jì)劃表InteractiveScheduleGraphInteractiveScheduleGraph圖4.16虛擬用戶加載圖Run點(diǎn)擊進(jìn)入“Run”頁面中。在點(diǎn)擊“StartScenario”之前,必須要開啟“WebTour"網(wǎng)站的“WebServer”服務(wù)器,否則將無法打開“WebTours”網(wǎng)站,也就無法讓虛擬用戶進(jìn)行登錄操作。在Run頁面的左上角是“ScenarioGroups”,里面動(dòng)態(tài)記錄著Vusers的狀態(tài)。虛擬用戶在執(zhí)行場(chǎng)景時(shí)虛擬用戶的狀態(tài)會(huì)發(fā)生變化??梢酝ㄟ^祈 旳紀(jì)“ |對(duì)虛擬用戶進(jìn)行控制和觀察。在Vusers控制器里可以手動(dòng)停止某個(gè)或全部虛擬用戶。如圖4.17所示。圖4?17虛擬用戶監(jiān)控虛擬用戶在執(zhí)行場(chǎng)景時(shí)會(huì)經(jīng)過“Down”-“Initializing”-“Ready”-“Running”-“Exiting”-“Stopped”的狀態(tài)轉(zhuǎn)換。如果出現(xiàn)錯(cuò)誤,將會(huì)出現(xiàn)“Done.Failed”狀態(tài)。同時(shí)在Run頁面的右上方可以對(duì)全局狀態(tài)進(jìn)行觀察。如圖4.18:圖4.18場(chǎng)景狀態(tài)此次場(chǎng)景的執(zhí)行共報(bào)錯(cuò)130個(gè),點(diǎn)擊右側(cè)放大鏡圖標(biāo)可查看具體出錯(cuò)信息。

TypeM已決SampleMessageTextrVusersSeri...Ei已nerat...H4■84...FailedtoStop.Reason:TimeUut505011■27...vuserend.c(8):Error-27796:Failedtoconnecttoserver":1080":[10...444411n■29...Error:Cannotkillprocessorthreadwithmoniker"9".Themonikerwasnotfound.30001v囲DetailsTypeofMessage:ErrorsFreezeDetailedMessageText:vuser_end.c[8]:Error-27796:Failedtoconnecttoserver":1080":[1006Summary圖4?19出錯(cuò)信息如圖4.19所示為虛擬用戶執(zhí)行場(chǎng)景的出錯(cuò)統(tǒng)計(jì)。在里面我們可以找出具體出錯(cuò)的原因。比如第一條“FailedtoStop.Reason:TimeOut",停止虛擬用戶失敗的原因是超時(shí),第二條為無法連接上圖4?19出錯(cuò)信息AvailableGraphs一RuntimeGraphs:RunningVusersLk:已「D已Fi門已dDataPointsErrorStatisticsVuserswithErrors一TransactiunGraphsAvailableGraphs一RuntimeGraphs:RunningVusersLk:已「D已Fi門已dDataPointsErrorStatisticsVuserswithErrors一TransactiunGraphsTransResponseTimeTrans/S已匚(PassEd]Trans/S已匚:〔F,BI已dStDpp已d]TutalTrans/Sec(Passed)-牛J已bF;已:£匚||」『匚已G『日ph:l:HitsperSecondThroughputHTTPResponsesperSecondPagesDownloadedperSecondRetriesperSecondConnections .一?…,故每臺(tái)電腦執(zhí)行在場(chǎng)景執(zhí)行期間,通過Controller可以觀察和搜集統(tǒng)計(jì)信息;場(chǎng)景執(zhí)行完之后,在LoadRunnerAnalysis中關(guān)聯(lián)所搜集的統(tǒng)計(jì)信息為分析關(guān)鍵問題做準(zhǔn)備;在測(cè)試場(chǎng)景執(zhí)行過程中或場(chǎng)景執(zhí)行之后,用戶通過瀏覽器可觀察到性能監(jiān)控器,使項(xiàng)目成員之間的協(xié)作更容易。選擇那些性能監(jiān)控器也是測(cè)試計(jì)劃的一部分。在Run頁面的左下方是用于監(jiān)控和觀察的一些項(xiàng)目。如圖4.20:在“AvailableGraphs"里是一些可供觀察和分析的項(xiàng)目,可以根據(jù)項(xiàng)目具體要求添加想要監(jiān)控的一些項(xiàng)目。我們要在“SystemResourceGraphs"下的“WindowsResources"中添加我們要觀察的一些關(guān)于本機(jī)Windows資源的一些參數(shù)。雙擊“WindowsResources",在頁面上方工具欄中點(diǎn)擊“Monitors-AddMeasurements",在“MonitoredServerMachine"中輸入“l(fā)ocalhost"。并在下方“ResourceMeasurementson:localhost"欄中添加我們要監(jiān)測(cè)的一些項(xiàng)目:如圖4.21:在Run頁面的右下方是對(duì)場(chǎng)景執(zhí)行過程當(dāng)中的各種資源及指標(biāo)進(jìn)行實(shí)時(shí)監(jiān)控的窗口,里面可以根據(jù)項(xiàng)目需求自定義切換監(jiān)控的對(duì)象,雙擊可放大觀察。在在對(duì)“WebTours”網(wǎng)站做性能測(cè)試的時(shí)候我們更多的關(guān)注一些主要指標(biāo)對(duì)應(yīng)的圖表,例女口RunningVusers,TransResponseTime,Throughput,ErroStatistics,Tran/Sec(passed),HitsperSecond等。圖4.21可供監(jiān)控的圖表在Run頁面右側(cè)的觀察框中可以根據(jù)需要添加要觀察的對(duì)象。OO:OO:QQ 00:05:00 0Q:10:00Elapsed-OO:OO:QQ 00:05:00 0Q:10:00Elapsed-ims圖4.22虛擬用戶加載RunningVusers-whoisscenario如圖4.22為虛擬用戶加載趨勢(shì)圖,顯示的是在Design中對(duì)場(chǎng)景進(jìn)行設(shè)計(jì)的時(shí)候所設(shè)定的虛擬用戶加載方案。g巴11111=1illEUddtnlllccg巴11111=1illEUddtnlllcc胡302010ransResponseims-whoisscenario00:O5:Q0Elapsed-ims(Hour:Min:Sec)00:10:QQQ0:00:00圖4.23事務(wù)響應(yīng)時(shí)間如圖4.23為事務(wù)響應(yīng)時(shí)間總和統(tǒng)計(jì)表。事務(wù)響應(yīng)時(shí)間是通過記錄用戶發(fā)出請(qǐng)求的開始時(shí)間和服務(wù)器返回內(nèi)容到客戶端的時(shí)間的差值來計(jì)算用戶操作響應(yīng)時(shí)間。可用于獲得某一功能的實(shí)現(xiàn)時(shí)間或某一頁面的加載時(shí)間,從而對(duì)系統(tǒng)的性能進(jìn)行衡量。此處我們對(duì)登錄和退出兩個(gè)功能添加了事務(wù)。圖中前半段為所有虛擬用戶進(jìn)行登錄操作時(shí)的事務(wù)響應(yīng)時(shí)間總和,后半段為所有虛擬用戶進(jìn)行退出操作時(shí)LoadRunner記錄的事務(wù)響應(yīng)時(shí)間總和。

如圖4.24為吞吐量的統(tǒng)計(jì)圖。吞吐量即每秒處理事務(wù)的數(shù)量??梢砸罁?jù)服務(wù)器的吞吐量來評(píng)估虛擬用戶產(chǎn)生的負(fù)載量,以及看出服務(wù)器在流量方面的處理能力以及是否存在瓶頸。從圖中可以看出在虛擬用戶加載的初期即登錄到系統(tǒng)的階段系統(tǒng)的吞吐量明顯增大,說明此階段客戶端與服務(wù)器的交互最為頻繁。可特別針對(duì)此階段進(jìn)行系統(tǒng)性能的優(yōu)化。QO:OO:OQ 00:Q5:00 Q0:10:0QElapsed-QO:OO:OQ 00:Q5:00 Q0:10:0QElapsed-ims圖4.25錯(cuò)誤統(tǒng)計(jì)ErrorStatistics-wholescenarioCJlljQwuORUCZIW匚EJlCJlljQwuORUCZIW匚EJl=h=7rans7&BC(Passed)-wholescenario圖3.16 ::■:::Elapsed-ime(Haur:Min:Sec)如圖4.25為錯(cuò)誤統(tǒng)計(jì)圖。在所有用戶加載完畢并運(yùn)行時(shí),其所占用的內(nèi)存和消耗的CPU資源會(huì)達(dá)到最大值,受負(fù)載機(jī)配置的限制,可能會(huì)發(fā)生錯(cuò)誤。常見的就是負(fù)載機(jī)CPU利用率到達(dá)100%導(dǎo)致系統(tǒng)沒法響應(yīng)而出錯(cuò)。20,00(}15.0QQ10,0(105r0DD圖4.26每秒通過的事務(wù)數(shù)如圖4.26為每秒通過的事務(wù)數(shù),此處的事務(wù)包括頁面中每一個(gè)gif圖,或者ActiveX控件,他們都將被視作事務(wù)而被統(tǒng)計(jì)。通過詳細(xì)統(tǒng)計(jì)頁面中事務(wù)數(shù)可以用來觀察在哪個(gè)階段系統(tǒng)頁面的任務(wù)量最大。從而可以對(duì)此階段進(jìn)行重點(diǎn)觀察與分析,以期發(fā)現(xiàn)系統(tǒng)的瓶頸。HrtsperSecond-wholescenario杲書七工社杲書七工社QO:OO:OQ 00:05:QQ 00:1Q:QOElapsed-im&(Hour:Min:Sec)圖4.27點(diǎn)擊率HTTPRespon呂&呂perSeco-wholeseen日「ioElapsed-imsHTTPRespon呂&呂perSeco-wholeseen日「ioElapsed-ims(Hour:LIin:Sec)圖4.28每秒發(fā)生的HTTP響應(yīng)數(shù)Q0:1Q:QQ505QO:QQ:QO如圖4.28為每秒發(fā)生的HTTP相應(yīng)數(shù),其走勢(shì)與點(diǎn)擊率(HTTP請(qǐng)求數(shù))相同,在客戶端向服務(wù)器發(fā)送HTTP請(qǐng)求后,服務(wù)器也會(huì)向客戶端回發(fā)HTTP響應(yīng)數(shù)。若此圖與點(diǎn)擊率圖不一致,則說明服務(wù)器未能完全響應(yīng)客戶端的請(qǐng)求。圖4.29圖4.29每秒下載的頁面數(shù)如圖4.29為每秒下載的頁面數(shù)圖。每秒下載頁數(shù)圖顯示場(chǎng)景或會(huì)話步驟運(yùn)行的每一秒中從服務(wù)器下載的網(wǎng)頁數(shù)。使用此圖可依據(jù)下載的頁數(shù)來計(jì)算Vuser生成的負(fù)載量。和吞吐量一樣,每秒下載的頁數(shù)表示Vuser在給定的任一秒內(nèi)從服務(wù)器接收到的數(shù)據(jù)量。與吞吐量圖作比較,吞吐量圖考慮的是各個(gè)資源及其大小(例如,每個(gè).gif文件的大小、每個(gè)網(wǎng)頁的大?。6棵胂螺d頁數(shù)圖只考慮頁數(shù)。4.7Analysis在使用Controller執(zhí)行負(fù)載測(cè)試計(jì)劃并收集了相關(guān)數(shù)據(jù)之后,可直接在Controller中點(diǎn)擊L匹進(jìn)入Analysis中并自動(dòng)生成Analysis報(bào)告。在Analysis頁面的左側(cè)列出了默認(rèn)的統(tǒng)計(jì)分析表,統(tǒng)計(jì)分析表中的一些項(xiàng)可目以根據(jù)需要手動(dòng)添加進(jìn)去,如圖4.30。另外在SummaryReport中是對(duì)整個(gè)場(chǎng)景執(zhí)行結(jié)果的匯總報(bào)告,報(bào)告中集中了各項(xiàng)重要指標(biāo)。如圖4.31:圖4.30Analysis目錄曰?園Sessionl.lra-匕Reports?臂SummaryReport. 圖3.32[iL]RunningVusers[iL]HitsperSecond[iL]Throughput[iL]Transa匚tionSummary[iL]AverageTran呂日匚tionR已呂pon呂已TirniScenarioName: C:\ProgramFiIes\HP\LoadRunner\scensrio\^ 1?lrsResultsinSession:C:\DouuiEmntsandSettings\Administrator\Lo匚mlSettings\Temp\res\res」「「Duration: 12minut曰百and30seconds.StatisticsSummaryMaximumRurmEimVusers:LOOTotalThrou口huut ?lr761r913AveraE3eThrou口hputfbytes/second): 02r34STotalUirts: ?lr594AverageHitsperSecond: ?2.L23ViewHTTPRes口口ns巳芻SummaryTotalErrors: ?39YoucandefineSLAdatausingtheSLAconfi口ur已tionwizardYoucnnanalyzetransactionbehaviorusingtheAn己卜?沱已Tr?呂nEEutiuriEEchnni呂eT『T『mns^<ztiioms:TotmlPassed;llr5-46,24STotalFailed;78TotalStopped:40ServiceLevelAgreementLegend:ServiceLevelAgreementLegend:護(hù)PassEJFail0NqDataTransactionNameSLAStatusMinimumAverageMaximumStd.Deviiatiion90PercentPassFailStopActionTransaction00?0010.01900.001llr545f9S6040vuserendTransaction1.45317?7435-53114.S5534.S1431390vuserinitTransactionLb6254.4228.3881-5956.678100000b6251.7343.839匸l?8893?172100001.453124込53114.S5534.S1431390料.忖已「日即已尺巳芻口口!1耳已TiimE圖4.31AnalysisS

溫馨提示

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

評(píng)論

0/150

提交評(píng)論