這是一個出單接口壓力測試的小例子,瞭解一下壓力測試最最基礎的基礎。出單接口是用來保險出單的,不須要在UI界面下一步下一步的出單,接口一調數據入庫完事~~~。再囉嗦一句接口應該都知道是什麼吧?一個完整的系統能夠大概分爲3個部分:前端,後臺,數據庫。前端傳數據給後臺,後臺將數據入庫並將數據庫返回數據傳給前端作頁面展現。接口就在後臺部分。接口接收前端的參數即請求報文,響應報文爲返回數據和提示信息。前端
測試步驟:
(1) lib/ext下添加插件JMeterPlugins-Extras.jar和JMeterPlugins-Standard.jar數據庫
(2) 測試計劃添加線程(用戶)jp@gc - stepping thread group併發
(3) 添加http請求高併發
(4) 添加聚合報告工具
(5) 添加查看結果樹測試
(6) 添加CSV數據文件設置spa
JMeter 3.1 地址:https://pan.baidu.com/s/1wPgbwS1dzWdsleS11wJ-Dw 提取碼:oe5t插件
JMeterPlugins-Extras.jar 地址:https://pan.baidu.com/s/1H2tBWGV2FClyFnKWUP2_IA 提取碼:9sh6線程
JMeterPlugins-Standard.jar 地址:https://pan.baidu.com/s/1vPVXty2ZyiAr68v1wWss0w 提取碼:q95o3d
ServerAgent-2.2.3 地址:https://pan.baidu.com/s/1WnQFFsw7DMF6lYN87s-Eng 提取碼:4wry
-
案例:
l 測試目的
200併發下:
- 出單接口響應時間1s內
- 出單成功率100%
l 執行方案
- 測試工具:Jmeter
- 執行時間:工做日白天(a.白天應急能力強 b.獲取保險公司真實的壓測數據)
- 場景:從100併發開始,每60s加壓50併發,直至達到目的併發數(中途發現問題隨時停掉)並維持5min,以後保持每60s中止50併發的速率關閉
- 結果:tps、響應時間、併發數的關係圖表(硬件佔用數據沒法監控,需保險公司關注)
-
操做步驟
一、安裝插件
將JMeterPlugins-Extras-1.4.0.zip解壓,找到lib/ext文件夾裏的JMeterPlugins-Extras.jar放到JMeter安裝目錄的lib/ext裏面,
同理將JMeterPlugins-Standard-1.4.0.zip解壓,lib/ext下的JMeterPlugins-Standard.jar放到JMeter安裝目錄的lib/ext裏面便可。以下圖
插件安裝好以後運行JMeter,能夠看到插件已經安裝好了
二、使用jp@gc - Stepping Thread Group插件
右鍵測試計劃->添加->Threads(Users)->jp@gc - Stepping Thread Group
控制面板介紹
l This group will start Max threads - 設置單臺負載機,線程組啓動的線程總數爲Max個
l First,wait for N seconds - 啓動第一個線程以前,須要等待N秒
l Then start N threads - 設置最開始時啓動N個線程
l Next add N1 threads every N2 seconds, using ramp-up N3 seconds - 而後,每隔N2秒,在N3秒內啓動N1個線程
l Then hold load for N seconds - 單臺負載機啓動的線程總數達到Max以後,持續運行N秒
l Finally,stop N1 threads ervery N2 seconds - 最後,每隔N2秒,中止N1個線程數。
最高200併發,100併發開始,0s內當即啓動50個線程運行60s,達到最高併發後維持300s,以後保持每60s中止50併發的速率關閉。
設置好以後,添加剛纔的出單請求,查看結果數,聚合報告,點擊綠色三角號運行就能夠了,最重要就是聚合報告。下圖表示壓測過程當中,一共發送了526個請求,全部請求的平均響應時間爲2.001s,95%的請求的響應時間爲2.877s,99%的請求的響應時間爲3.457s,錯誤率爲0,吞吐量爲3.6/sec
壓測小例子完畢。這裏壓測響應時間爲2.001s沒有達到壓測目標1s內。若是在實際壓測過程當中還產生了其餘問題以及都有什麼解決辦法,歡迎你們留言討論!!!