jmeter針對websocket協議的壓測


之前一直沒有接觸過websocket協議,所以一直對websocket的壓測存在疑惑,在網上參考文章並不斷嘗試之后,終於有所得;第一次用jmeter的websoket插件,用的ws非加密協議,請求都能得到正常響應,但由於公司系統升級使用了wss加密協議,再次用該插件后發現報如下錯誤:

- Opening new connection
- Using response message pattern ""
- Using disconnect pattern ""
- Waiting for the server connection for 5000 MILLISECONDS
- Cannot connect to the remote server

 

 於是在國外網站上找到了全英文答案,該jar包2014年起就不更新了。最后重新下載了新的websocketjar包,下載地址:https://download.csdn.net/download/qq_41954078/10636378    該包下載完成后直接放在jmeter的lib/ext目錄下,重啟jmeter即可使用;

 

在使用之前我們要知道我們的請求的地址與參數是什么,所以

第一步:抓包;在chrome瀏覽器中按F12可以看到相關數據如圖所示;

 

 

 

 Frames下面中的數據就是請求與響應的數據,其中綠色箭頭代表請求的數據,紅色箭頭表示響應的數據;

 

 

 第二步:新建jmeter測試計划;

a、第一個取樣器如圖:

 

 

1、代表協議類型,ws對應http,wss對應https;

2、請求服務器名稱,從抓包結果可以獲得;

3、請求端口號,從抓包結果可以獲得;

4、請求路徑,從抓包結果可以獲得;

5、連接5S后未連上超時,可以自己設置;

6、請求數據,從抓包結果可以獲得;;

7、響應6S后未成功超時,可以自己設置;

 

b:第二個取樣器如圖:在第一個取樣器已經建立連接的情況下,第二個取樣器直接選擇use existing connection即可繼續發送請求;

 

 

 

參考文章:

https://blog.csdn.net/wx19900503/article/details/79221264

https://blog.csdn.net/heart_1014/article/details/53606337  保持心跳

 

websocket壓測思路:

1、建立websocket鏈接 ;

2、在鏈接下保持心跳,使用jmeter循環控制器發送心跳保持鏈接;

3、參數化請求參數;如並發500個鏈接;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM