【摘 要】軟件的性能是企業(yè)衡量軟件系統(tǒng)的一項重要指標,也是評價軟件質量的重要標準之一。本文以某企業(yè)應用系統(tǒng)為例,詳細總結了基于LoadRunner的性能測試流程中的任務和方法,此類方法對各類應用系統(tǒng)的性能測試均具有指導性意義。
【關鍵詞】性能測試;平均系統(tǒng)響應時間;資源占用率
一、LoadRunner工作原理和衡量指標
(1)工作原理。LoadRunner是一款能夠預測系統(tǒng)性能的性能測試工具,通過模擬上千萬用戶實際并發(fā)和負載情形,向服務器發(fā)送請求,截獲客戶端和服務器之間的通訊數(shù)據(jù)包,檢測服務器的響應。同時實時監(jiān)控目標服務器的性能指標,以便通過分析和查找,判斷瓶頸所在。(2)衡量指標。在使用LoadRunner進行性能測試過程中,系統(tǒng)性能測試指標是衡量系統(tǒng)性能的直觀數(shù)據(jù),常用衡量指標有以下幾項:一是平均系統(tǒng)響應時間。該指標為衡量系統(tǒng)性能的最重要最常用指標之一,指從客戶端發(fā)出請求到接到服務端返回的數(shù)據(jù)所消耗的時間,系統(tǒng)響應時間包括應用服務器、數(shù)據(jù)庫服務器和網絡傳輸?shù)雀鱾€組件的時間之和,而用戶感受到的響應時間為平均系統(tǒng)響應時間加上客戶端界面呈現(xiàn)時間之和,其客戶端的界面呈現(xiàn)時間很大程度取決于客戶端的硬件表現(xiàn)。二是資源占用率。指系統(tǒng)在性能測試過程中,承擔負載壓力的服務器所耗費的各類資源的狀況,常包含CPU占用率、內存利用率、帶寬等。CPU占用率可以有效衡量服務器的CPU是否夠用,指標Processor\\%Processor Time體現(xiàn)了處理器的利用率,一般CPU占用不得超過75%,指標Processor\\%User Time體現(xiàn)了消耗CPU的數(shù)據(jù)庫操作,若該指標值較高則需要優(yōu)化所測系統(tǒng)的應用算法;內存利用率用來衡量內存是否足夠,指標Memory Available Mbytes的值一般不超過80%,若超過80%的利用率,則應考慮給所測服務器添加內存;帶寬指標Network Interface用來衡量客戶端與各個服務器之間的網絡數(shù)據(jù)傳遞速度是否存在瓶頸,若Total throughput與測試運行時間之比的值與當前網絡帶寬的值相接近,則應該考慮改善當前網絡環(huán)境。三是平均每秒通過事務數(shù)。是指性能測試過程中各個模式的客戶端事務被服務器成功處理后的事務數(shù)量。在具體性能測試中,不能簡單獨立地使用各性能指標,而往往要綜合各項指標綜合分析系統(tǒng)的性能表現(xiàn),以更真實的反應出系統(tǒng)缺陷。
二、性能測試應用總結
(1)制定測試計劃。完整嚴謹?shù)挠媱澥钦麄€性能測試成功與否的關鍵。該計劃的制定需考慮以下三個方面:分析應用:即了解系統(tǒng)的架構,所采用的開發(fā)語言,了解網絡情況,了解用戶的使用方式及行為;定義測試目標:即深入了解測試的目的、用戶可接受的最大響應時間和系統(tǒng)資源的占用上限,這個目標是以用戶為中心的;最后基于以上兩個方面制定測試計劃,其中包含并發(fā)數(shù)的要求,場景的設置,測試環(huán)境的設置,以及相關硬軟測試資源的規(guī)劃等。(2)設計測試場景。一是場景設置。以登陸事務為例,按照系統(tǒng)的實際用戶上限量,取并發(fā)用戶數(shù)為10,并在負載過程中用戶以每15秒增加2個進行遞增,以每15秒減少2個進行退出,期間滿負載運行10分鐘。用戶遞增速率和退出速率應盡量放慢,其設置能模擬實際的負載場景,并能利于發(fā)現(xiàn)問題。二是測試環(huán)境。應按照實際系統(tǒng)的使用環(huán)境進行客戶端、應用服務器、數(shù)據(jù)庫服務器、網絡帶寬的真實環(huán)境設置,以便在使用LoadRunner進行模擬過程中更貼近實際系統(tǒng)的運行環(huán)境,得到數(shù)據(jù)更真實可信。(3)測試執(zhí)行?;谝陨蠝y試場景,使用LoadRunner的Controller組件滿負載運行30分鐘,并添加了Think Time以便更真實的模擬用戶場景在測試執(zhí)行。在負載過程中,要時刻注意通過事務數(shù)量和各種圖的情況,當有失敗的事物出現(xiàn)時,需檢查腳本的正確性和場景設置的合理性。(4)測試結果分析。Controller定時從各個
Generator上獲取采集的數(shù)據(jù),通過使用Analysis組件顯示測試結果,最后通過收集結果進行數(shù)據(jù)分析。
結果分析顯示,隨著虛擬用戶數(shù)量的遞增,平均系統(tǒng)響應時間并未超過用戶的預期最大值,同時,資源圖的各個指標表現(xiàn)都平穩(wěn)。若以上平均系統(tǒng)響應時間超過用戶可接受的最大響應時間,測試人員需結合平均系統(tǒng)響應時間和資源圖兩張圖,按照資源占用率的各個衡量指標,從硬軟兩方面定位問題所在和系統(tǒng)瓶頸,從而找到系統(tǒng)優(yōu)化的辦法。
性能測試結果很難僅僅通過測試數(shù)據(jù)反映系統(tǒng)設計的優(yōu)良與否,其主要目的是為了發(fā)現(xiàn)系統(tǒng)瓶頸,改善和擴展系統(tǒng)。對整個流程中各個細節(jié)的充分研究必將有助于性能測試技術的進一步發(fā)展。
參 考 文 獻
[1]惠斌武,陳明銳,楊登攀.Web應用系統(tǒng)性能測試研究與應用[J].計算機應用.2011(7):1769~1772
[2]文俊浩,桑春艷,何盼.電子政務系統(tǒng)性能測試應用研究[J].計算機科學.2009(4):179~180