性能測試基本思路
測什麼
1.确定業務場景
2.确定測試方向
3.确定業務範圍
4.确定業務邏輯(任何測類型都不能脫離業務邏輯)
怎麼測
1.熟悉常用性能名額描述
2.學會設計測試場景
3.确定并發使用者數
4.熟悉性能腳本設計
對不對
1.分析資料結果
2.優化性能資料
3.整理測試報告

性能測試視角
1.使用者視角
關注浏覽器響應時間(浏覽器時間+接口時間)
2.開發視角
隻關心代碼處理速度
3.運維視角
關心使用者數增加對伺服器資源的影響
4.測試視角
使用者體驗+硬體資源+代碼品質
性能測試名額
error
1.需要優先保證正确率
2.脫離了正确率的性能結果都沒有意義
RPS
request persecond(每秒請求數)代表了壓力值
100線程,每秒請求1次:rps=100/s
100線程,每秒請求2次:rps=200/s
1線程,每秒疊代100次:rps=100/s
TPS:transaction persecond(每秒處理數)
代表了伺服器(cpu)的處理能力
1.cpu的處理能力是有上限的
2.通過設計RPS,施壓伺服器,觀察TPS曲線,可以找到cpu的處理上限
3.tps随時都在波動,影響的可能性也有很多(磁盤,網絡,記憶體)
rt:響應時間
latency:總延遲
connect time:網絡連接配接
response time:服務處理
latency=connect+response
latency和connect內插補點大,表示時間消耗在了服務層
latency和connect內插補點大小,表示時間消耗在了網絡層
性能測試類型
并發測試
1.不存在絕對的并發,并發一定是有機關時間的,通常都是秒
2.線程是一邊啟動一邊發送請求,是以同步并發需要加集合點:Synchronizing Timer
負載測試
1.持續不斷的增加壓力,找到性能瓶頸點(階梯加壓線程組)
2.随着負載增加,tps應該持續增加。如果出現下降的趨勢,表示瓶頸點已經到了
3.找到瓶頸點之後就可以停止測試
壓力測試
1.維持一定的負載量,持續運作一段時間(幾小時或者幾天)
2.穩定性壓力測試:保持最大壓力的80%,目的是找到記憶體洩露的問題
3.破壞性壓力測試:極限壓力持續運作,目的就是讓伺服器快速的暴露異常