前言
Jmeter是目前主流的性能测试工具,原因除了他是开源的、免费的之外,还有它的拓展性非常强。Jmeter默认使用的协议是Http/HTTPS协议,但这并不是唯一的协议,通过加载插件,可以让Jmeter支持更多协议的脚本开发。
webservice(soap)协议
webservice是一个web的应用程序,使用xml想外界暴露可供调用的API接口。
webservice的接口标准:
SOAP(simple Object Access Protocol)是使用 http + xml的方法进行传输。;
UDDI((UnviversalDescription ,Discovery,andIntegration));
WSDL(Web Service Description Language),描述语言,基于XML;
soap是基于XML的简易协议,可使应用程序在Http之上进行信息交换。而XML本身是一种用于传输和存储数据的一种文本文件。
脚本编写
由于soap接口是使用Http+xml的,所以在jmeter中,使用http取样器也可以使用,只是消息体数据中要填入的是xml
上图的请求发起的是soap1.1版本的,soap1.1和1.2中最大的区别就是soap1.1版本的请求头必须要填SOAPAction
其次,1.1和1.2版本的请求体,xml格式的标签也略有不同。
soap1.2版本的节点名称是soap12, 而1.1时soap
Websocket 协议
websocket协议是基于TCP的一种新的网络协议,它实现了客户端和服务端全双工通信,即允许服务器主动向客户端发送消息。
websocket与http都是使用tcp协议,它们之间的区别:
http:只能客户端向服务端发起请求,服务端收到请求后进行处理再原路返回。
websocket:除了客户端可以想服务端发起请求之外,服务器也能主要想客户端发送消息。
举个例子,有些app在连接网络后,你没有做任何操作,它也会向你推送消息。
不过推送消息这个不止websocket可以做,mq也可以,这里只是说websocket支持。
与http协议族一样,websocket协议族也有两个:
ws
wss: ws + ssl证书,加密传输
websocket和socket不是同一个东西;
websocket是一个通讯协议,接口是对外暴露的;
socket是代码层面上的调用;
引入插件
安装WebSocket Samplers by Peter Doornbosch
脚本编写
websocket的取样器有以下几个:
websocket closc:关闭websocket
websocket open connection :建立一个websocket
websocket ping/pong: 测试websocket协议是否连通
websocket single read samplcr:客户端从服务端获取响应
websocket single write sampler :客户端向服务端发请求
websocket request-response sampler:同时具备向服务端发请求和获取响应的功能
建立连接
填入IP、端口、路径即可
发起请求
默认情况下,connection是选择use existing connection,意思是使用已有的连接;另一个选项setup new connection是建立一个新的连接,由于我在上面已经创建了连接,所以就选择use existing connection
在Data里填入传入的消息
获取响应
同样的是选择use existing connection,然后根据响应内容的选择对应的文本格式
以上步骤使用websocket request-response sampler可以一次性完成,操作也是一样的就不演示了。
另外建议最后都加上websocket closc取样器,关闭连接。
Dubbo 协议
Dubbo是一款高性能、轻量级的开元java RPC框架,它提供了三大核心能力:面向接口的远程方法调用、智能容错和负载均衡以及服务自动注册和发现。
引入插件
这次不能在jmeter的插件管理工具里下载了,得要额外下载。
名:jmeter-plugins-dubbo-2.7.3-jar-with-dependencies.zip
放入这个插件之后,jmeter的启动速度会慢一点,因此推荐在测试dubbo的时候才引入这个插件,其他时候就不要放进来了。
编写脚本
Protocol:选择注册中心
Address:注册中心的地址
Get Provider List: 点击获取提供者的列表,点了之后jmeter会卡死几秒钟,不用担心,别乱点!
下面这部分就是填写参数的,具体的参数请询问开发。
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
只要心中有梦想,在追求的路上不停前行,即使面对挫折和困难,也要坚信自己的能力和价值,最终绝不放弃,才能获得属于自己的辉煌成功!
人生的路途不会总是平坦,但只要你有信念、有勇气、有毅力,就能跨越千山万水,攀登高峰,最终获得属于自己的成功与荣耀!文章来源:https://www.toymoban.com/news/detail-418935.html
生命中,最重要的不是你遇到了什么,而是你如何去应对。保持一颗永远向上的心,坚持自己的信念,即使跌倒也能重新站起来,才能走向属于自己的光芒与辉煌!文章来源地址https://www.toymoban.com/news/detail-418935.html
到了这里,关于全网最详细,Jmeter性能测试-性能进阶, 多协议实战Websocket/Dubbo(七)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!