如何用jmeter對websockt和protobuf進行壓力測試


 參考代碼:https://github.com/hutao722/kekexinxin

 這是基於Jmeter WebsocketSampler的插件,支持對基於websocket和protobuf的服務器進行測試。

 想要應用到具體業務中,還需要進行代碼改造,可參考demo代碼。

 工程結構

 兩個子工程組成:

 1. jmeter-websocketprotobuf-front工程。基於maciejzaleski/JMeter-WebSocketSampler(https://github.com/maciejzaleski/JMeter-WebSocketSampler). 本人做了改動,以支持protobuf數據。

2. jmeter-websocketprotobuf-custom工程。這是需要根據自身業務進行改造的工程,該工程已經有Demo,可仿造進行改動。總體來說是把請求的json數據轉換成pb數據去調用服務器接口,再用返回的pb結果轉換成json數據顯示。

用法

1. 下載並用maven編譯和打包,命令為:mvn clean package -DskipTests -P dev

    我們可以得到JMeter-WebsocketProtobuf-front-1.0.jar 和 JMeter-WebsocketProtobuf-custom-1.0.jar兩個jar包

2. 將下列jar包放入jmeter的\lib\ext 包下:

   JMeter-WebsocketProtobuf-front-1.0.jar

   JMeter-WebsocketProtobuf-custom-1.0.jar

   jetty-util-9.3.11.v20160721.jar

   jetty-io-9.3.11.v20160721.jar

   websocket-common-9.3.11.v20160721.jar

   websocket-client-9.3.11.v20160721.jar

   websocket-api-9.3.11.v20160721.jar

   protobuf-java-2.6.1.jar

   protobuf-java-format-1.2.jar

   fastjson-1.2.8.jar

3. 重啟jmeter后,即可以試試,截圖如下:

    

 

 修改相應的參數,點擊運行后,即可在結果觀察樹中查看結果。

 該插件支持ws和wss協議。

 


免責聲明!

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



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