使用JMeter进行MQTT性能/压力测试
一、添加线程组
1. 添加线程组,Jmeter执行是通过线程组进行驱动的,测试计划必须最少有一个线程组,选中测试计划,点击右键,添加>线程>线程组。

二、添加如下请求
1. 添加创建连接请求-选中线程组,点击右键,添加>取样器>MQTT Connect。
2.这个请求的作用是进行MQTT连接,本次使用本机开启的MQTT服务进行测试,默认ip为127.0.0.1,端口默认1883。

3. 添加发布请求-选中线程组,点击右键,添加>取样器>MQTT Pub Sampler。
4. 该MQTT请求作用是发布消息到服务器,只需要输入主题、发送消息类型、发送消息内容即可。

5. 添加订阅请求-选中线程组,点击右键,添加>取样器>MQTT Sub Sampler。
6. 该请求作用是用来订阅发布的消息,只需要输入主题名称,即可订阅。

7.我们测试过程中一般只需要连接一次,所以本次还需要为MQTT Connect添加一个仅一次控制器,该控制器的效果就是一个线程只执行一次,不管执行多少次循环,也是执行一次这个线程。右键线程组>添加>逻辑控制器>仅一次控制器。
8.添加查看报告,右键线程组,添加>监听器 这些组件的功能是查看每个请求的具体请求参数和响应结果。
三、参数化
1.可以对需要变化的参数,进行参数化,如MQTT Connect中的用户账号和密码,MQTT Pub Sampler中发布的信息内容。四、执行测试
点击开始按键,等运行完了之后可以在查看报告里面查看运行结果