点击下载《MQTT客户端服务端工具》
点击下载《MQTT自动发送消息软件(自动化测试MQTT)》
1. 前言
在软件开发过程中,MQTT常被用作消息队列来完成特定的业务功能。当我们将相关业务代码编写完成后,通常需要编写额外的消息生产和消费代码来模拟消息高峰时的处理能力以及程序的健壮性。对于不具备编码能力的测试人员来说,如果有一个工具能够通过简单的配置即可实现高频率地生产消息,无疑会解决一大难题。现在,《MQTT自动生产消息》工具来了,下面我将详细介绍一下该软件的使用。
2. 软件介绍
该软件是一个基于 C# 的自动化 MQTT 消息生产程序。它集成了 MQTT 连接配置、消息自动生成配置以及日志记录功能,能够按照预设的时间间隔和总次数自动发送 MQTT 消息。消息内容支持多种随机生成类型,包括日期、序列号、Mac 地址、整数和浮点数。此外,程序还提供了实时日志查看功能,以便用户能够实时监控消息的生产情况。
2.1 连接配置
- Host: 配置MQTT服务端地址。
- Port: 配置MQTT服务端端口。
注意事项:
- Host和Port为必须输入项。
- 如果服务端配置了用户名和密码连接访问,则必须输入用户名和密码方可连接成功,否则无需填写用户名和密码。
所有配置完成后,点击【连接】即可,如输入无误,则可连接成功。
2.2 配置Topic
在主题列表中,点击右键将出现子菜单,子菜单功能包括:新增主题、修改主题、复制主题、删除主题、上移到顶部、上移一位、下移一位、下移到底部。新增主题和修改主题功能在输入完数据后需要点击保存才会将录入数据保存。
- Topic:
- 定义: Topic 是 MQTT 中用于标识消息发布和订阅的渠道或类别。它是一个简单的字符串,可以包含多个层级,用斜杠(/)分隔。例如,
sensor/temperature
或device/12345/status
。 - 作用: 客户端(发布者)将消息发布到特定的 Topic 上,而其他客户端(订阅者)可以订阅一个或多个 Topic 来接收消息。Topic 的使用使得消息的发布和订阅变得有序和可管理。
- 层级结构: Topic 可以包含多个层级,每个层级代表一个特定的分类或属性。例如,
home/livingroom/temperature
表示家庭中客厅的温度传感器数据。 - 通配符: MQTT 支持使用通配符来订阅多个 Topic。
+
通配符用于匹配一个层级,#
通配符用于匹配多个层级。例如,home/+/temperature
可以匹配home/livingroom/temperature
和home/kitchen/temperature
,而home/#
可以匹配home
下的所有子主题。 - 通配符和主题过滤: 通过使用通配符,客户端可以灵活地订阅一组相关的 Topic,而不需要为每个可能的 Topic 都单独订阅。
- 定义: Topic 是 MQTT 中用于标识消息发布和订阅的渠道或类别。它是一个简单的字符串,可以包含多个层级,用斜杠(/)分隔。例如,
- Message: 必填项,它是客户端之间交换数据的基本单位。
2.3 开始执行
配置完成后,点击【启动】按钮即可开始执行Kafka消息生产操作。程序将按照Topic配置列表的顺序依次执行状态为【启用】的Topic记录。
2.4 查看日志
程序在执行过程中会自动切换至日志查看界面,用户可以实时查看每个Topic消息的生产明细。日志界面提供了【开始】按钮,与生产消息界面的【开始】按钮功能相同。
当日志内容过多时,用户可以点击【清空日志】来清理当前日志内容。点击【保存为文件】可以将当前日志内容保存为log文件。如果未手动保存日志记录,程序会在可执行目录下的Log/LogInfo文件夹中保留所有执行的日志记录。
最后,我们分别使用MQTT服务端软件和MQTTX查看一下,可以看到确实是发送成功了。
3. 总结
该 C# 开发的自动化 MQTT 消息生成程序为用户提供了一个高效、灵活的消息生成工具。通过集成 MQTT 连接配置、消息自动生成配置和日志记录功能,程序能够满足用户在测试和开发过程中对 MQTT 消息生成的需求。随机生成的消息内容以及实时日志查看功能进一步增强了程序的功能性和用户体验,使得消息生成过程更加便捷和可控。
点击下载《MQTT客户端服务端工具》
点击下载《MQTT自动发送消息软件(自动化测试MQTT)》