什么是性能測(cè)試?
性能測(cè)試是指被測(cè)系統(tǒng),在一定的負(fù)載下運(yùn)行,監(jiān)控系統(tǒng)的各項(xiàng)指標(biāo)是否符合需求(指標(biāo)包括cpu、內(nèi)存、事物響應(yīng)時(shí)間),如果不符合,就發(fā)現(xiàn)了系統(tǒng)的性能瓶頸。
使用性能測(cè)試工具來(lái)模擬各種正常,峰值以及異常負(fù)載條件下,對(duì)系統(tǒng)的各項(xiàng)性能指標(biāo)進(jìn)行測(cè)試
性能測(cè)試的目的
1>識(shí)別系統(tǒng)的弱點(diǎn)
2>評(píng)估系統(tǒng)能力
3>發(fā)現(xiàn)系統(tǒng)性能瓶頸
4>提高系統(tǒng)可靠性和穩(wěn)定性
為什么開展性能測(cè)試?
1>成本的優(yōu)化配置
2>用戶眼中的良好形象
3>節(jié)約成本
4>判斷目前系統(tǒng)的性能瓶頸
5>系統(tǒng)應(yīng)用能夠適應(yīng)未來(lái)的業(yè)務(wù)增長(zhǎng)
性能測(cè)試的流程
1>、獲取有效的性能測(cè)試需求,明確測(cè)試目標(biāo)
2>、設(shè)計(jì)測(cè)試計(jì)劃,又稱測(cè)試方案和測(cè)試策略
3>、搭建測(cè)試環(huán)境,確認(rèn)測(cè)試環(huán)境的可用性
4>、設(shè)計(jì)壓測(cè)腳本,優(yōu)化腳本
5>、進(jìn)行基準(zhǔn)測(cè)試,確認(rèn)測(cè)試環(huán)境,腳本,正確可用(相當(dāng)于功能測(cè)試中的冒煙測(cè)試,也稱bvt)
6>、進(jìn)行正常測(cè)試,選擇場(chǎng)景(手動(dòng)場(chǎng)景,面向?qū)ο蟮膱?chǎng)景),設(shè)計(jì)場(chǎng)景
7>、壓測(cè)過(guò)程中觀察監(jiān)控指標(biāo)
8>、對(duì)得到的性能測(cè)試數(shù)據(jù)指標(biāo)進(jìn)行分析,通過(guò)圖標(biāo)合并,指標(biāo)背離的方法得出性能測(cè)試結(jié)論
9>、編寫測(cè)試報(bào)告
性能測(cè)試的方法(壓力、并發(fā)、負(fù)載、配置、容量、基準(zhǔn)、可靠性)
并發(fā)測(cè)試:所有的用戶在同一時(shí)刻做同一件事情或操作這就叫做并發(fā)測(cè)試。
壓力測(cè)試:不斷向系統(tǒng)施加壓力,確定系統(tǒng)瓶頸,找到最優(yōu)并發(fā)。
負(fù)載測(cè)試:負(fù)載測(cè)試是確定在各種工作負(fù)載下系統(tǒng)各項(xiàng)性能指標(biāo)的變化情況。
基準(zhǔn)測(cè)試、可靠性測(cè)試、數(shù)據(jù)量測(cè)試、配置測(cè)試
性能測(cè)試的指標(biāo)
1> 響應(yīng)時(shí)間??應(yīng)用系統(tǒng)從發(fā)出請(qǐng)求開始到客戶端接收到響應(yīng)所消耗的時(shí)間
2)>并發(fā)用戶數(shù)?同一時(shí)段內(nèi)對(duì)系統(tǒng)進(jìn)行同一操作的所有用戶
3> 吞吐量?單位時(shí)間內(nèi)系統(tǒng)處理客戶請(qǐng)求的數(shù)量
4> TPS? ?每秒鐘系統(tǒng)能夠處理的交易或事物的數(shù)量
5)>HPS? ?每秒用戶向web服務(wù)器提交的HTTP請(qǐng)求數(shù)
性能測(cè)試前幾年被關(guān)注的較少,近幾年備受重視,那為什么要做性能測(cè)試呢?有很多種說(shuō)法,個(gè)人比較認(rèn)可下面這個(gè),分享給大家:
?評(píng)估系統(tǒng)的能力?
識(shí)別體系中的弱點(diǎn)?
系統(tǒng)調(diào)優(yōu)?
驗(yàn)證穩(wěn)定性(resilience)可靠性(reliability)?
針對(duì)上面這幾種目的,針對(duì)不同的結(jié)果,給出不同的應(yīng)對(duì)方案和措施,這才是性能測(cè)試的最終目標(biāo):?
測(cè)試中得到的負(fù)荷和響應(yīng)時(shí)間數(shù)據(jù)可以被用于驗(yàn)證所計(jì)劃的模型的能力,并幫助作出決策。?
受控的負(fù)荷可以被增加到一個(gè)極端的水平,并突破它,從而修復(fù)體系的瓶頸或薄弱的地方。?
重復(fù)運(yùn)行測(cè)試,驗(yàn)證調(diào)整系統(tǒng)的活動(dòng)得到了預(yù)期的結(jié)果,從而改進(jìn)性能。
檢測(cè)軟件中的問(wèn)題:長(zhǎng)時(shí)間的測(cè)試執(zhí)行可導(dǎo)致程序發(fā)生由于內(nèi)存泄露引起的失敗,揭示程序中的隱含的問(wèn)題或沖突。 在一個(gè)生產(chǎn)負(fù)荷下執(zhí)行測(cè)試一定的時(shí)間是評(píng)估系統(tǒng)穩(wěn)定性和可靠性是否滿足要求的唯一方法?