在軟件測試過程中,性能測試和功能測試區(qū)別很大,測試過程和方法都不一樣,對測試工程師專業(yè)技能要求也是不一樣,通常性能測試對人員要求高于功能測試,功能測試用例設計方法有等價類與邊界值、場景法、正交排列驅動法、因果圖、判定表……,那么性能測試用例如何設計和編寫。
性能測試目的:
為了驗證系統(tǒng)是否達到用戶提出的性能指標,同時發(fā)現(xiàn)系統(tǒng)中存在的性能瓶頸,起到優(yōu)化系統(tǒng)的目的。
性能測試指標:
用戶對各項指標提出的明確需求;如果用戶沒有提出性能指標則根據(jù)用戶需求、測試設計人員的經驗來設計各項測試指標。(需求+經驗)
主要的性能指標:
服務器的各項指標CPU占用率、內存占用率、后臺數(shù)據(jù)庫的各項指標、網(wǎng)絡流量、響應時間。
1、性能測試像一個人在無風情況下跑步(正常情況下的性能指標);
2、壓力測試像一個人在微風中跑步(在正常的基礎上加大多少百分比壓力的性能指標);
3、負載測試像一個人在強風中跑步(不斷加壓,直到系統(tǒng)崩潰)。
HTTP協(xié)議觀點:
1、 負載測試是正常情況下持續(xù)的加壓;
2、 壓力測試是直接加壓達到一個極限值,所稱峰值測試和極限測試;
大家統(tǒng)一的觀點:
性能測試、壓力測試、負載測試、峰值測試密不可分,可統(tǒng)稱為性能測試。
性能測試要點:
1、 性能測試是在功能測試完成之后進行。
2、 性能測試計劃、方案一般與測試用例統(tǒng)一在一個文檔里。
3、 測試環(huán)境應必須與用戶環(huán)境保持一致,否則測試結果偏差很大,不具有參考價值;
4、 性能測試一般使用測試工具和測試人員編制測試腳本來完成,性能測試的環(huán)境應單獨運行盡量避免與其他軟件同時使用。
5、 性能測試的重點在于前期數(shù)據(jù)的設計與后期數(shù)據(jù)的分析。
6、 性能測試的用例主要涉及到整個系統(tǒng)架構的問題,所以測試用例一旦生成,改動一般不大,所以做性能測試的重復使用率一般比較高。(說明:當系統(tǒng)中出現(xiàn)的某個功能點需要修改,它一般只會影響到功能測試的設計用例,而對于性能測試,很少影響到性能測試的設計用例。但是如果某個功能有較大的修改,性能測試也應該進行重新測試。
上面我們是以HTTP協(xié)議為例詳細講解,除了HTTP協(xié)議,還有幾種常見協(xié)議,https、websocket、tcp/ip、MQ等等協(xié)議、設計測試用例大家參考HTTP協(xié)議,設計思路基本上都是大同小異。
推薦閱讀: