導(dǎo)語
性能測試主要是通過自動化的測試工具模擬多種正常、峰值以及異常負載條件來對系統(tǒng)的各項性能指標進行的一種測試。
系統(tǒng)的性能是個很大的概念,覆蓋面非常廣泛,對一個軟件系統(tǒng)而言,包括執(zhí)行效率、資源占用、穩(wěn)定性、安全性、兼容性、可擴展性、可靠性等等。
負載測試和壓力測試都屬于性能測試,兩者可以結(jié)合進行。通過負載測試,確定在各種工作負載下系統(tǒng)的性能,目標是測試當負載逐漸增加時,系統(tǒng)各項性能指標的變化情況。壓力測試是通過確定一個系統(tǒng)的瓶頸或者不能接收的性能點,來獲得系統(tǒng)能提供的大服務(wù)級別的測試。[詳情]
一:SEI負載測試計劃過程
SEI負載測試計劃過程是一個關(guān)注于負載測試計劃的方法,其目標是產(chǎn)生“清晰、易理解、可驗證的負載測試計劃”。
SEI負載測試計劃過程包括6個關(guān)注的區(qū)域:目標、用戶、用例、生產(chǎn)環(huán)境、測試環(huán)境和測試場景。
其重點關(guān)注以下幾個方面的內(nèi)容:
1、生產(chǎn)環(huán)境與測試環(huán)境的不同
2、用戶分析
3、用例
二:RBI(RapidBottleneckIdentify)方法:用于快速識別系統(tǒng)性能瓶頸的方法。該方法基于以下一些事實:
a、發(fā)現(xiàn)的80%系統(tǒng)的性能瓶頸都是由于吞吐量制約;
b、并發(fā)用戶數(shù)和吞吐量瓶頸之間存在一定的關(guān)聯(lián)
c、采用吞吐量測試可以更快速定位問題。
自己給公司同事寫的一點入門小知識,希望對新同行有些幫助。
上次性能測試培訓(xùn)后,不少同事反饋性能測試的一些基本概念還是難以理解,所以我在這里把那些看起來比較虛無縹緲的概念實例化生活化一下,一來僅供大家參考,二來當做自己的一個簡單總結(jié)。
什么是性能測試?
性能測試可以用資本家模型來描述。資本家自然是希望工人們多干活少拿工資,同樣性能測試也是要求系統(tǒng)多干活少損耗。又要馬兒跑得快又想馬兒少吃草。
不少前輩總結(jié)過,性能測試是在時間和空間上尋找佳結(jié)合點。馬兒跑得快是指時間,不吃草是指空間。性能測試則是尋找時間和空間之間的一個平衡點。
上述為樸素和廣義的性能測試。
摘要:隨著現(xiàn)代網(wǎng)絡(luò)的發(fā)展速度不斷提高,B/S結(jié)構(gòu)的程序軟件需求越來越普遍,而各公司的業(yè)務(wù)需求量也在不斷增大,因此對軟件并發(fā)需求及吞吐量需求也越來越大,這要求各軟件企業(yè)在應(yīng)對用戶性能需求時使用更有效的測試策略,論文當前軟件企業(yè)性能測試策略現(xiàn)狀進行了歸納分析。
一、引言
現(xiàn)代公司用戶使用的應(yīng)用型軟件大多數(shù)為B/S結(jié)構(gòu)和C/S結(jié)構(gòu),而隨著公司用戶及客戶數(shù)量的增加,應(yīng)用軟件對系統(tǒng)并發(fā)用戶數(shù)要求越來越高,同時,大多數(shù)在線系統(tǒng)用戶對注冊時間,響應(yīng)時間要求也較高,因此,大部份公司對軟件企業(yè)設(shè)計的軟件項目在大負載及壓力需求上都有直接的用戶需求,在進行軟件項目需求分析及項目設(shè)計過程中,軟件企業(yè)要充分考慮到軟件項目在后期維護過程中客戶的需求變化及維護費用帶來的公司利潤,大多數(shù)軟件企業(yè)都更加注重項目在發(fā)布前的性能測試工作,性能測試在軟件企業(yè)及其它項目開發(fā)者使用專門的軟件測試工具及腳本描述測試對象與相關(guān)性能指標的特征并對軟件性能進行評價的過程。在性能測試的過程中,有的公司采用的是商業(yè)測試工具,有的公司采用的是開源工具,還有的公司是采用自己開發(fā)的測試工具進行操作評價,并對開發(fā)人員進行溝通,從而對軟件項目質(zhì)量進行綜合評價。
二、性能測試工具分析
性能測試要求軟件企業(yè)在模擬用戶真實環(huán)境的場景下對軟件項目進行客觀的評價,而在軟件企業(yè)中單憑固定的硬件設(shè)備往往不能達到模擬并發(fā)用戶,模擬多個負載的場景,因而,性能測試工具變得格外重要。目前軟件企業(yè)的性能測試工具大體分為以下幾種:
1、開源工具
象部分Linux操作系統(tǒng)內(nèi)核及IBM公司投資開發(fā)的eclipse一樣,使用靈活,功能全面,免費的開源工具是大多數(shù)軟件公司的。目前做性能測試的開源工具主要有Jmeter,針對Java Web程序項目開發(fā)及FTP服務(wù)項目進行性能測試,通過模擬多個并發(fā)的虛擬用戶,通過集合點、事務(wù)點對場景進行負載測試、壓力測試,提供圖形化的顯示界面對軟件項目性能進行綜合分析;DbMonster,主要針對Sqlsever數(shù)據(jù)庫進行壓力測試;TpTest,主要對internet網(wǎng)絡(luò)連接速度、響應(yīng)時間進行測試。
2、商業(yè)工具
商業(yè)工具往往由專門的公司進行開發(fā),通過大量的人力及資金投入支持,開發(fā)后一般具有界面更加美觀、操作更加方便、功能更加強大、支持的插件更多等特點。并且因為商業(yè)軟件的本身特點,一般還包括后期的升級服務(wù),用戶操作掊訓(xùn)服務(wù)等優(yōu)勢。所以也廣泛地應(yīng)用于各大型企業(yè)。目前主要的商業(yè)工具有HP公司收購Mercury后繼續(xù)提供的LoadRunner,具有支持負載多,支持協(xié)議多,實時進行性能指標跟蹤的特點;IBM公司開發(fā)的Rational系列Performance Tester適用于團隊開發(fā),通過性能測試從創(chuàng)建到結(jié)果分析的自動化過程對軟件項目進行性能分析。