test(M00): 补充MQTT高级冒烟入口
This commit is contained in:
@@ -41,6 +41,9 @@ bash scripts/dev/wsl/mqtt-smoke.sh
|
||||
- 允许订阅 Topic 连接检查。
|
||||
- 错误密码拒绝。
|
||||
- 越权订阅 Topic 探测。
|
||||
- 可选 TLS 发布探测。
|
||||
- 可选遗嘱消息观测探测。
|
||||
- 可选重复消息发布,用于下游幂等验证取证。
|
||||
|
||||
如果未配置 `QIPAI_MQTT_USERNAME` 和 `QIPAI_MQTT_PASSWORD`,脚本会输出 `SKIP`,不得视为认证/ACL 已通过。
|
||||
|
||||
@@ -51,18 +54,21 @@ bash scripts/dev/wsl/mqtt-smoke.sh
|
||||
|
||||
- `QIPAI_MQTT_DENIED_SUBSCRIBE_TOPIC` 默认值为 `'$SYS/#'`,必须保留引号,避免 shell 把 `$SYS` 当作本地变量展开。
|
||||
- `--check-config` 只确认本地账号配置存在,不打印口令,不执行 MQTT 连接。
|
||||
- `QIPAI_MQTT_ENABLE_TLS_SMOKE=true` 时会对 `QIPAI_MQTT_TLS_PROTOCOL://QIPAI_MQTT_TLS_HOST:QIPAI_MQTT_TLS_PORT` 执行一次发布探测;本地自签证书可临时使用 `QIPAI_MQTT_TLS_INSECURE=true`,生产验收必须提供 CA/证书链证据。
|
||||
- `QIPAI_MQTT_ENABLE_WILL_SMOKE=true` 时会尝试观测遗嘱消息;如果 MQTTX 退出路径被 Broker 视为正常断开,脚本会输出 `WARN`,仍需结合 Broker 和客户端故障日志验收。
|
||||
- `QIPAI_MQTT_ENABLE_IDEMPOTENCY_SMOKE=true` 时会向同一 Topic 连续发布相同 `idempotencyKey` 的消息;脚本只证明重复消息已发出,最终幂等必须由后端/设备日志证明。
|
||||
|
||||
## 验收边界
|
||||
|
||||
端口监听正常只证明服务级可用,不能证明以下项目已完成:
|
||||
|
||||
- TLS 证书链和客户端校验。
|
||||
- TLS 证书链和客户端校验;当前仅有可选发布探测入口。
|
||||
- MQTT 客户端认证账号实际可用性。
|
||||
- 错误密码拒绝实际结果。
|
||||
- ACL 越权拒绝实际结果。
|
||||
- MQTT 3.1 / QoS 1 业务协议联调。
|
||||
- 遗嘱消息。
|
||||
- 重复消息幂等。
|
||||
- 遗嘱消息;当前仅有可选观测探测入口。
|
||||
- 重复消息幂等;当前仅能发布重复消息,尚未接入下游消费断言。
|
||||
- 真实控制箱、门锁、插座执行结果。
|
||||
|
||||
## 账号记录规则
|
||||
|
||||
Reference in New Issue
Block a user