前言
Jmeter是目前主流的性能測試工具,原因除了他是開源的、免費的之外,還有它的拓展性非常強。Jmeter默認(rèn)使用的協(xié)議是Http/HTTPS協(xié)議,但這并不是唯一的協(xié)議,通過加載插件,可以讓Jmeter支持更多協(xié)議的腳本開發(fā)。
webservice(soap)協(xié)議
webservice是一個web的應(yīng)用程序,使用xml想外界暴露可供調(diào)用的API接口。
webservice的接口標(biāo)準(zhǔn):
SOAP(simple Object Access Protocol)是使用 http + xml的方法進(jìn)行傳輸。;
UDDI((UnviversalDescription ,Discovery,andIntegration));
WSDL(Web Service Description Language),描述語言,基于XML;
soap是基于XML的簡易協(xié)議,可使應(yīng)用程序在Http之上進(jìn)行信息交換。而XML本身是一種用于傳輸和存儲數(shù)據(jù)的一種文本文件。
腳本編寫
由于soap接口是使用Http+xml的,所以在jmeter中,使用http取樣器也可以使用,只是消息體數(shù)據(jù)中要填入的是xml
上圖的請求發(fā)起的是soap1.1版本的,soap1.1和1.2中最大的區(qū)別就是soap1.1版本的請求頭必須要填SOAPAction
其次,1.1和1.2版本的請求體,xml格式的標(biāo)簽也略有不同。
soap1.2版本的節(jié)點名稱是soap12, 而1.1時soap
Websocket 協(xié)議
websocket協(xié)議是基于TCP的一種新的網(wǎng)絡(luò)協(xié)議,它實現(xiàn)了客戶端和服務(wù)端全雙工通信,即允許服務(wù)器主動向客戶端發(fā)送消息。
websocket與http都是使用tcp協(xié)議,它們之間的區(qū)別:
http:只能客戶端向服務(wù)端發(fā)起請求,服務(wù)端收到請求后進(jìn)行處理再原路返回。
websocket:除了客戶端可以想服務(wù)端發(fā)起請求之外,服務(wù)器也能主要想客戶端發(fā)送消息。
舉個例子,有些app在連接網(wǎng)絡(luò)后,你沒有做任何操作,它也會向你推送消息。
不過推送消息這個不止websocket可以做,mq也可以,這里只是說websocket支持。
與http協(xié)議族一樣,websocket協(xié)議族也有兩個:
ws
wss: ws + ssl證書,加密傳輸
websocket和socket不是同一個東西;
websocket是一個通訊協(xié)議,接口是對外暴露的;
socket是代碼層面上的調(diào)用;
引入插件
安裝WebSocket Samplers by Peter Doornbosch
腳本編寫
websocket的取樣器有以下幾個:
websocket closc:關(guān)閉websocket
websocket open connection :建立一個websocket
websocket ping/pong: 測試websocket協(xié)議是否連通
websocket single read samplcr:客戶端從服務(wù)端獲取響應(yīng)
websocket single write sampler :客戶端向服務(wù)端發(fā)請求
websocket request-response sampler:同時具備向服務(wù)端發(fā)請求和獲取響應(yīng)的功能
建立連接
填入IP、端口、路徑即可
發(fā)起請求
默認(rèn)情況下,connection是選擇use existing connection,意思是使用已有的連接;另一個選項setup new connection是建立一個新的連接,由于我在上面已經(jīng)創(chuàng)建了連接,所以就選擇use existing connection
在Data里填入傳入的消息
獲取響應(yīng)
同樣的是選擇use existing connection,然后根據(jù)響應(yīng)內(nèi)容的選擇對應(yīng)的文本格式
以上步驟使用websocket request-response sampler可以一次性完成,操作也是一樣的就不演示了。
另外建議最后都加上websocket closc取樣器,關(guān)閉連接。
Dubbo 協(xié)議
Dubbo是一款高性能、輕量級的開元java RPC框架,它提供了三大核心能力:面向接口的遠(yuǎn)程方法調(diào)用、智能容錯和負(fù)載均衡以及服務(wù)自動注冊和發(fā)現(xiàn)。
引入插件
這次不能在jmeter的插件管理工具里下載了,得要額外下載。
名:jmeter-plugins-dubbo-2.7.3-jar-with-dependencies.zip
放入這個插件之后,jmeter的啟動速度會慢一點,因此推薦在測試dubbo的時候才引入這個插件,其他時候就不要放進(jìn)來了。
編寫腳本
Protocol:選擇注冊中心
Address:注冊中心的地址
Get Provider List: 點擊獲取提供者的列表,點了之后jmeter會卡死幾秒鐘,不用擔(dān)心,別亂點!
下面這部分就是填寫參數(shù)的,具體的參數(shù)請詢問開發(fā)。
下面是我整理的2023年最全的軟件測試工程師學(xué)習(xí)知識架構(gòu)體系圖 |
一、Python編程入門到精通
二、接口自動化項目實戰(zhàn)
三、Web自動化項目實戰(zhàn)
四、App自動化項目實戰(zhàn)
五、一線大廠簡歷
六、測試開發(fā)DevOps體系
七、常用自動化測試工具
八、JMeter性能測試
九、總結(jié)(尾部小驚喜)
只要心中有夢想,在追求的路上不停前行,即使面對挫折和困難,也要堅信自己的能力和價值,最終絕不放棄,才能獲得屬于自己的輝煌成功!
人生的路途不會總是平坦,但只要你有信念、有勇氣、有毅力,就能跨越千山萬水,攀登高峰,最終獲得屬于自己的成功與榮耀!文章來源:http://www.zghlxwxcb.cn/news/detail-418935.html
生命中,最重要的不是你遇到了什么,而是你如何去應(yīng)對。保持一顆永遠(yuǎn)向上的心,堅持自己的信念,即使跌倒也能重新站起來,才能走向?qū)儆谧约旱墓饷⑴c輝煌!文章來源地址http://www.zghlxwxcb.cn/news/detail-418935.html
到了這里,關(guān)于全網(wǎng)最詳細(xì),Jmeter性能測試-性能進(jìn)階, 多協(xié)議實戰(zhàn)Websocket/Dubbo(七)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!