【接口测试】JMeter测试WebSocket接口

这篇具有很好参考价值的文章主要介绍了【接口测试】JMeter测试WebSocket接口。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、WebSocket简介

二、JMeter测试WebSocket接口

三、WebSocket和Socket的区别

最近老被问到WebSocket,突然想到以前大学时上Java课的时候,老师教我们socket连接,一个同学电脑做客户端,一个同学电脑做服务端,当双方消息发送成功,第一次感觉到代码的奇妙~

毕竟抄代码都不利索,哈哈哈哈哈~

接下来将如何测试WebSocket接口总结下来。

一、WebSocket简介

WebSocket是一种网络通信协议,客户端和服务端只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。

我们常见的协议是HTTP和HTTPS协议,客户端向服务端发起请求,服务端向客户端返回响应,完成一次请求响应之后就会断开连接。对于金融证券的实时信息、社交网络的实时消息推送、网络直播等需要实时传输数据的情况下,HTTP并不能很好的满足。

HTTP需要客户端向服务端发起请求;WebSocket服务端可以主动向客户端推送信息,客户端也可以主动向服务器发送信息。

一旦WebSocket连接建立后,后续数据都以帧序列的形式传输。在客户端断开WebSocket连接或Server端中断连接前,不需要客户端和服务端重新发起连接请求。

二、JMeter测试WebSocket接口

1、安装WebSocket插件

选项 > Plugins Manager 输入WebSocket,勾选对应插件,点击Apply Changes and Restart JMeter。

该插件包含websocket-api.jar、websocket-common.jar、websocket-client.jar、jetty-http.jar、jetty-io.jar、jetty-util.jar等JAR包。

【接口测试】JMeter测试WebSocket接口

2、WebSocket相关的取样器

  • websocket close 用于正常关闭websocket连接;
  • websocket open connection 用于显式设置websocket连接;
  • websocket ping-pong 用于发送ping和接收 pong请求;
  • websocket sampler 用于执行基本的请求-响应请求;
  • websocket single read sampler 用于接收一个文本或二进制的websocket请求;
  • websocket single write sampler 用于发送一个文本或二进制的websocket请求;

【接口测试】JMeter测试WebSocket接口

3、构建一个WebSocket接口

一般我们在网上看到的大多HTTP接口,为了方便验证,我从网上找一段Java实现WebSocket实时通讯代码,代码已经放到https://gitee.com/weimenghua/Learn-Java,运行JavaWebApplication即可启动项目,项目启动后即可进行测试。

客户端发送内容:http://127.0.0.1:63342/Learn-Java/Java-Web/com/wmh/view/socket.html。
服务端发送内容:http://127.0.0.1:9999/wbtest/sendMsg/test_websocket。

【接口测试】JMeter测试WebSocket接口

4、进行websocket接口测试

选中“线程组”右键 > 添加 > 取样器 > WebSocket Open Connection。

建立WebSocket连接:ws://127.0.0.1:9999/websocket/demo。

【接口测试】JMeter测试WebSocket接口

选中“线程组”右键 > 添加 > 取样器 > WebSocket Sampler。

发起WebSocket请求:ws://127.0.0.1:9999/wbtest/sendMsg/test_websocket。
  • Server Name or IP:发送请求的目标服务器的IP地址或者域名。
  • Port Number:服务器地址后的端口号,有则填写,没有不用填写。
  • Protocol [ws/wss]:ws是明文数据传输,wss是密文数据传输,相当于http和https的差别,默认ws。
  • Path:接口路径。
  • Request data:发送的请求数据。

【接口测试】JMeter测试WebSocket接口

我们可以再控制台看到服务端发送内容。

【接口测试】JMeter测试WebSocket接口

若需在请求完成之后关闭WebSocket连接,可添加WebScoket Close取样器。

【接口测试】JMeter测试WebSocket接口

相关脚本已放到gitee:https://gitee.com/weimenghua/wei-notebook/blob/master/JMeter/JMeter.jmx

三、WebSocket和Socket的区别

1、socket翻译为套接字,socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用以实现进程在网络中通信。

2、WebSocket协议是基于TCP的一种新的网络协议,和http协议一样属于应用层协议,是一种让客户端和服务器之间能进行双向实时通信的技术。

https://www.processon.com/view/link/615eae81e0b34d06f3dcdf4b

【接口测试】JMeter测试WebSocket接口文章来源地址https://www.toymoban.com/news/detail-481622.html

到了这里,关于【接口测试】JMeter测试WebSocket接口的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • JMeter进行websocket测试

    在做websocket性能测试的时候找了几个测试工具都暂时没有对websocket的支持,发现jmeter好像对websockect支持。但是使用jmeter时需要安装插件,下面一起看一下。 jmeter下载安装: 官网下载 https://jmeter.apache.org/download_jmeter.cgi 也可在我的资源中下载 https://download.csdn.net/download/qq_3956

    2024年02月12日
    浏览(41)
  • Jmeter对websocket进行测试

    JMeterWebSocketSampler-1.0.2-SNAPSHOT.jar下载 公司使用websocket比较奇怪,需要带认证信息进行长连接,通过websocket插件是请求失败,如下图,后面通过代码实现随再打包jar包完成websocket测试 本地实现代码如下: 显示如下:  开发代码打包到lib/ext目录,通过Jmeter对本地方法进行测试,

    2024年02月12日
    浏览(30)
  • JMeter进行WebSocket压力测试

    背景 之前两篇内容介绍了一下 WebSocket 和 SocketIO 的基础内容。之后用 Netty-SocketIO 开发了一个简单的服务端,支持服务端主动向客户端发送消息,同时也支持客户端请求,服务端响应方式。本文主要想了解一下服务端的性能怎么样,选择使用 JMeter 对 WebSocket 应用进行性能测试

    2024年02月16日
    浏览(48)
  • 如何使用Jmeter对WebSocket进行压力测试

    01 环境准备 Jmeter对WebSocket协议的环境准备: 因为Jmeter本身不支持WebSocket协议的,所以需要安装第三方的插件JMeterWebSocketSampler-1.0.2-SNAPSHOT.jar,并直接将这个jar包放到Jmeter软件的libext目录下。 查阅https://github.com/maciejzaleski/JMeter-WebSocketSampler/wiki/Dependencies看到,这个插件需要以

    2024年02月08日
    浏览(43)
  • 使用JMeter测试基于WebSocket协议的服务

    示例:WebSocket是一种双向网络通信协议,与HTTP不同,它以ws://或wss://开头。它是一个有状态协议,这意味着客户端和服务器之间的连接将保持活动状态,直到被客户端或服务器中的任何一方关闭连接之后,连接将从两端终止。 初次接触 WebSocket的人,都会问同样的问题:我们

    2024年02月06日
    浏览(51)
  • jmeter做接口压力测试_jmeter接口性能测试

     jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单。因为jmeter是java开发的,所以运行的时候必须先要安装jdk才可以。jmeter是免安装的,拿到安装包之后直接解压就可以使用,同时它在linu

    2024年02月07日
    浏览(70)
  • 性能进阶:使用JMeter进行websocket测试【建议收藏】

    本次测试案例主要是分享如何使用JMeter进行websocket协议下的聊天接口性能测试。 包含websocket插件的下载安装、线程组及sampler的设置、csv参数化和组建分布式测试的方法、如何通过调整参数来获得发压机的最大并发数以及对测试过程的总结。 整篇文章只侧重介绍进行websocket测

    2024年02月08日
    浏览(52)
  • jmeter之接口测试(http接口测试)

    一、了解jmeter接口测试请求接口的原理 客户端--发送一个请求动作--服务器响应--返回客户端 客户端--发送一个请求动作--jmeter代理服务器---服务器--jmeter代理服务器--服务器 二、了解基础接口知识: 1、什么是接口:前端与后台之间的桥梁、数据传输的通道,就是一个函数 2、

    2024年02月14日
    浏览(39)
  • JMeter接口测试及接口登陆压力测试

    或上方链接下载 脚本: https://mp.csdn.net/mp_download/manage/download/UpDetailed 查看别的博主内容时发现了个开放的API,可以作为练习使用 https://wanandroid.com/blog/show/2 操作步骤 1.启动jmeter 2.在\\\"测试计划\\\"下添加\\\"线程组\\\" 3.在\\\"线程组\\\"下添加\\\"HTTP请求\\\"取样器 4.填写\\\"HTTP请求\\\"的相关请求数据

    2023年04月08日
    浏览(35)
  • Jmeter接口测试:jmeter导入和导出接口的处理

    利用Jmeter测试上传文件,首先可根据接口文档或者fiddler抓包分析文件上传的接口;如下图: 以下是我通过fiddler所截取的文件上传的接口 1、填写导入接口的信息 查看文件上传栏下的填写信息: 文件名称:导入文件的路径 参数名称:file MIME类型:为fiddler抓包的Content-Type的值

    2024年02月05日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包