性能測試概念
什么是性能測試:通過自動化測試工具模擬多種正常、峰值以及異常負載條件下系統(tǒng)的各項性能指標的測試。基準測試,負載測試,壓力測試,穩(wěn)定性測試和容量測試都屬于性能測試,可以根據(jù)實際場景結合進行。
基準測試:得出用戶在較小壓力情況下,系統(tǒng)的性能基準
負載測試:確定各種工作負載下的系統(tǒng)性能,目標是測試當負載逐漸增加時,系統(tǒng)各項性能指標的變化情況。
壓力測試:通過不斷加壓,確定系統(tǒng)的瓶頸或者不能接受的性能點,來獲得系統(tǒng)能提供的最大服務級別的測試
穩(wěn)定性測試:模擬生產(chǎn)環(huán)境下真實高峰低谷時間段的情況下,不同的壓力長時間運行,檢測系統(tǒng)穩(wěn)定性。
容量測試:獲取系統(tǒng)能支持的最大用戶容量,業(yè)務容量和數(shù)據(jù)容量。
注明:負載測試與壓力測試的最大區(qū)別是負載測試是負載在0%到100%系統(tǒng)的性能情況,而壓力測試的負載100%以上的性能情況
性能測試的目的
1 評估系統(tǒng)的業(yè)務處理能力
2 找出系統(tǒng)的性能瓶頸
3 為系統(tǒng)調(diào)優(yōu)提供數(shù)據(jù)支持
4 驗證系統(tǒng)的可靠性和穩(wěn)定性
5 系統(tǒng)的運營維護需要性能數(shù)據(jù)指標支撐
性能監(jiān)控及瓶頸定位
系統(tǒng)層
網(wǎng)絡層
中間應用層
業(yè)務邏輯層
數(shù)據(jù)庫層
說明:其他幾層都是比較明確的層次,中間應用層比如jvm(涉及gc的配置),日志(涉及I/O讀寫,硬盤占用)。最簡單的監(jiān)控就是函數(shù)級監(jiān)控,直接在函數(shù)上下加開始時間和結束時間的打印。
性能測試過程交付內(nèi)容
1 測試策略
2 測試計劃
3 測試場景類型
4 收集生產(chǎn)環(huán)境配置,用戶量,業(yè)務量和業(yè)務場景
5 測試環(huán)境與生產(chǎn)環(huán)節(jié)配置的差異分析
6性能指標和目標
7測試監(jiān)控點分析和配置
8 測試腳本開發(fā)
9 測試場景配置
10 測試執(zhí)行和結果收集
11 測試結果分析和瓶頸定位
12測試問題解決和回歸測試
說明:測試數(shù)據(jù)分為2類,1存量數(shù)據(jù)? 2業(yè)務數(shù)據(jù)(消耗數(shù)據(jù)和可重用數(shù)據(jù))
本文的內(nèi)容來自鄭興宗老師的培訓