Jmeter接口测试-websocket测试

Jmeter接口测试-websocket测试

测试之前的准备工作,需要websocket插件

方式一:

去github下载:

https://github.com/maciejzaleski/JMeter-WebSocketSampler/wiki/Dependencies

  • jetty-http-9.1.2.v20140210.jar
  • jetty-io-9.1.2.v20140210.jar
  • jetty-util-9.1.2.v20140210.jar
  • websocket-api-9.1.1.v20140108.jar
  • websocket-client-9.1.1.v20140108.jar
  • websocket-common-9.1.1.v20140108.jar

直接放到Jmeter目录的\lib\ext\目录下即可

重启Jmeter之后可以在sampler中看到websocket sampler这一项

方式二:

从Jmeter3.X开始在菜单选项->插件管理

在available plugs选项搜索中输入websocket, 在列表中勾选即可在线安装, 我已经安装过了就在installed plugs选项中

需要重启Jmeter, 可以在sampler中看到websocket sampler这一项, 线程组->添加-> sampler ->websocket sampler

web socket简介:

1.web Server:

Server Name or IP: web socket发送的目标服务器地址或IP

Port Number: web socket 监听的端口号

Time out 都是采用默认值,可以不修改

2.Web Socket Request:

Implementation 目前只支持RFC645(V13)

Protocol : WS, ws是websocket辨别标识, 还有wss是websocket 安全连接

Streaming Connection 要不要保持这个TCP连接, 如果勾选, 连接一直存在, 不勾选, 那么第一次响应后就关闭连接.

Request data: 将要发送的请求, 这个是什么格式的消息, 和开发同学沟通好

  1. web socket Response

Response Pattern 如果取样器等待含有标识的消息继续通讯, 直到timeout, 连接关闭

Close Connection Pattern 如果服务器返回消息的含有设定字符, 连接关闭

Message Backing 定义服务器返回消息保留最大长度

示例介绍:

1.新建2个websocket, 不勾选Streaming Connection ,设置2次循环

可以发现每次请求都新建立连接

  1. 都勾选Streaming Connection 再次执行

可以看到- Reusing exising connection, 不是第一个- Opening new connection. 因此勾选了Streaming Connection, 会话结束后保留连接, 且勾选了的websocket会在有可用连接时直接使用, 而没有勾选的websocket即使存在可用连接,也会new一个新连接.

websocket sample-1的response pattern填的是test:002,而正确的是test:001

websocket sample-1的运行结果就是didn't match any pattern, Response Pattern若为空不填,代表什么都匹配. Jmeter socket的设置介绍就这里, 希望对大家学习websocket有帮助, 赶快学起来吧!

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
AiXed3 小时前
PC微信协议之nid算法
python·网络协议·算法·微信
爱学测试的雨果5 小时前
软件测试面试题总结【含答案】
功能测试·测试工具·面试
Laravel技术社区6 小时前
海康视频 h5player 配置 proxy 代理websocket播放视频问题(websocket在业务系统https方式访问http的播放视频)
websocket·http·音视频
阿巴~阿巴~8 小时前
IPv4地址转换函数详解及C++容器安全删除操作指南
linux·服务器·c++·网络协议·算法·c++容器安全删除操作·ipv4地址转换函数
百***67039 小时前
Node.js实现WebSocket教程
websocket·网络协议·node.js
测试19989 小时前
如何用Appium实现移动端UI自动化测试?
自动化测试·软件测试·python·测试工具·ui·职场和发展·appium
赖small强11 小时前
【ZeroRange WebRTC】Kinesis Video Streams WebRTC 三大平面职责与协同关系总结
websocket·webrtc·control plane·data plane
ZKNOW甄知科技11 小时前
重构企业运维智慧:低代码 ITSM 知识管理平台的创新与实践
大数据·运维·人工智能·程序人生·低代码·重构·it
罗小爬EX13 小时前
基于WebSocket + STOMP + SockJS + RabbitMq的聊天室Demo
websocket·网络协议·rabbitmq
赖small强14 小时前
【ZeroRange WebRTC】Kinesis Video Streams WebRTC Data Plane WebSocket API 深度解析
websocket·webrtc·sdp·offer/answer·master/viewer