jmeter如何測試websocket接口


jmeter做接口測試,很多人都是做http協議的接口,就有很多人問websocket的接口怎么測試啊?

 

首先,我們要明白,websocket接口是什么接口。

 

 

 

然后,我們怎么用jmeter測試?

 

jmeter要測試websocket接口,需要先下載安裝一個websocket samplers by peter doornbosch 的插件,插件安裝成功后,再次啟動jmeter,會在jmeter取樣器最下面顯示6個socket相關的取樣器

 

 

 

 

websocket close 用於正常關閉websocket連接;

 

websocket open connection 用於顯式設置websocket連接;

 

websocket ping-pong 用於發送ping和接收 pong請求;

 

websocket single read sampler 用於接收一個文本或二進制的websocket請求;

 

websocket single write sampler 用於發送一個文本或二進制的websocket請求;

 

websocket request-response sampler 用於執行基本的請求-響應請求;

 

日常測試時,使用websocket request-Response sampler就足夠了。

 

 

 

 

日常測試時,使用websocket request-Response sampler就足夠了。

 

 

connection,有兩個單選,一個是使用已經建立的連接,如果選擇這種,那么,在該取樣器之前要使用 websocket opnen connection先連接;

 

如果選擇新建一個連接,則該取樣器中,需要配置serverURL信息。

 

serverURL中,首先是協議,下拉框有兩個選項,ws和wss. ws是明文數據傳輸,wss是密文數據傳輸,相當於http和https的差別。

 

server name or ip 就填寫服務器的域名或ip地址

 

 

 

server name or ip 就填寫服務器的域名或ip地址;

 

port 對應服務的端口;

 

path 對應服務路徑,可以用 /;

 

data 就是發送的數據,支持兩種,text文本,和binary 二進制;

 

request data為發送的數據,當數據類型為文本式,可以帶jmeter的參數,如果為binary 二進制時,則輸入的為二進制內容。

 

 

 

工具的配置就是這些,如果你只配置了websocket request-Response sampler 請求結束后,websocket連接不會關閉。

 

但是會在下次運行時,GC(垃圾收集)會自動回收資源關閉連接。

 

如果期望,測試結束時,立馬關閉,可以使用websocket close 取樣器

 

也可以修改jmeter.properties文件,設置:websocket.thread.stop.policy = wsClose;

 

若設置為:

websocket.thread.stop.policy=tcpClose則要在關閉jmeter時關閉連接。

 

接下來我們搭建一個demo,測試websocket接口。

 

首先,在linux服務器上下載websocketd:https://github.com/joewalnes/websocketd/releases 在這個頁面中,找到你系統對應的包,下載后安裝,並配置好環境變量。

 

然后,在服務器依然地方,創建一個soc.py文件:

 

 

然后,在linux服務器上執行:

 

 

最后,檢查下你的服務器防火牆,開放你配置的端口。

 

此時,一個websocket的服務器已經搭建好,可以用jmeter來測試了。

 

 

這樣就實現了用jmeter測試websocket接口


免責聲明!

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



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