JMeter MQTT 在连接测试场景中的使用
通过之前的文章,相信大家已经熟悉了 JMeter 及 MQTT 插件的使用等基础知识。从本文开始,我们利用这些测试工具进行测试实战。本文将介绍 MQTT 连接的测试。
连接场景分析
插件中 MQTT Connect 请求主要模拟设备与 MQTT 服务器(本文以 EMQX 为例)建立连接,并按指定间隔发送 MQTT keep alive 报文,在物联网实际场景中经常需要海量设备连接并保持在线,大量设备同时上线及下线;本文脚本将模拟 400 个设备同时与 EMQX 建立连接,并保持连接 30 分钟后同时下线。
如何使用 MQTT 插件编写测试脚本
- 在测试计划下创建线程组。
- 在线程组下添加“MQTT 连接采样器”(即"MQTT Connect")
- 在 MQTT 连接采样器下添加“同步定时器”,确保所有线程在同一时间开始建立连接。
- 在线程组下添加“测试活动”,用于控制建立连接后连接保持的时间。
- 在线程组下添加“MQTT 断开连接采样器” (即"MQTT DisConnect"),模拟设备同时断开连接。
- 在测试计划下创建“汇总报告”和“察看结果树”监听器,用于检查 JMeter 请求结果。
测试的执行
对编写好的脚本进行调试验证,确认 MQTT Broker 的连通性及脚本运行逻辑符合预期后,将线程组页面的线程组数修改为 400,页面点击 Start 按钮执行测试。
查看连接结果,从汇总报告看出吞吐量为 394.9/s,即 400 客户端在 1 秒内同时连接。
登录 EMQX Dashboard 页面,显示如下:
附件:样例脚本
读者可下载测试脚本运行并查看结果。
版权声明: 本文为 EMQ 原创,转载请注明出处。
原文链接:https://www.emqx.com/zh/blog/test-mqtt-connection-with-jmeter
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示