Skip to content

Docs Channel MQTT

少舒 edited this page Jul 20, 2018 · 8 revisions

AliOS Things MQTT通道测试规范

自测帮助详见 AliOS Things MQTT 通道自测指南

设备认证

用例编号:AOS-3-16

用例名称:设备认证

测试目的:验证设备认证后获取iotid与iottoken

用例属性:功能

测试步骤

设备尝试通过HTTPS/MQTT/ID2认证

预期结果

1.设备所支持的认证方式认证通过,拿到iotid和iottoken并且成功连接MQTT服务器

2.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注: 认证方式有HTTPS认证/MQTT直连认证/ID2认证,设备可选支持其中一种或多种

MQTT通道连接

用例编号:AOS-3-17

用例名称:MQTT通道连接

测试目的:验证设备连接MQTT服务器

用例属性:功能

测试步骤

1.设备连接设备MQTT服务

预期结果

1.设备连接MQTT服务成功,设备状态变为在线

2.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

设备订阅topic

用例编号:AOS-3-18

用例名称:设备订阅topic

测试目的:验证设备连接成功后订阅topic的能力

用例属性:功能

测试步骤

1.设备订阅topic A,保持在线状态

2.web页面向该设备的topic A 发布一条消息

预期结果

1.设备接收到topic A的一条消息并且消息内容与页面填写的内容相同

2.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

设备发布topic

用例编号:AOS-3-19

用例名称:设备发布topic

测试目的:验证设备连接成功后主动发布topic的能力

用例属性:功能

测试步骤

1.设备向topic A发布一条消息

2.web页面向该设备的topic A 发布一条消息

预期结果

1.设备发布消息成功,服务日志查询的消息内容与设备发布的消息内容相同

2.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

设备心跳

用例编号:AOS-3-20

用例名称:设备心跳

测试目的:验证设备保持在线心跳机制完备

用例属性:功能

测试步骤

1.设备以心跳为周期向MQTT服务器发送心跳包持续3小时

2.观察云端设备在线状态

预期结果

1.设备3小时无离线

2.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

设备反复认证与连接

用例编号:AOS-3-21

用例名称:设备反复认证与连接

测试目的:验证设备反复认证与连接稳定性

用例属性:功能

测试步骤

1.设备认证

2.认证成功后,设备建立MQTT连接

3.设备断开MQTT连接

4.步骤1~3重复1000次

预期结果

1.认证与建立连接成功率99.9%

2.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

设备长时间稳定通信

用例编号:AOS-3-22

用例名称:设备长时间稳定通信

测试目的:验证设备长时间工作稳定且高频数据通信稳定

用例属性:功能

测试步骤: 1.设备认证连接,并保持在线状态

2.设备订阅topic A,在topic A回调函数中将接收到的消息转发到topic B

3.使用压测工具以500ms周期向topic A发送消息,并统计topic B消息数量

预期结果

1.3x24小时稳定工作,无离线

2.成功率≥99.5%

3.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

压测工具及使用见AliOS Things MQTT 通道自测指南

大数据包稳定通信

用例编号:AOS-3-23

用例名称:验证设备大数据包稳定通信

测试目的:验证设备大数据包稳定通信

用例属性:稳定性

测试步骤

1.设备认证连接,并保持在线状态

2.设备订阅topic A,在topic A回调函数中将接收到的消息转发到topic B

3.使用压测工具以1秒周期向topic A发送32KB payload,并统计topic B消息数量

预期结果

1.1小时稳定工作

2.丢包率≤0.5%

3.重连次数≤1次

4.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

1.压测工具及使用见AliOS Things MQTT 通道自测指南

2.32KB payload可以根据设备实际能力调整

断网发现

用例编号:AOS-3-24

用例名称:断网发现

测试目的:验证设备在网络断开后能发现网络异常

用例属性:稳定性

测试步骤

1.设备认证连接,并保持在线状态(维持心跳)

2.待连接稳定后,断开网络(断AP WAN口)

3.查看设备端日志

预期结果

1.网络断开后设备能发现并断开MQTT连接

2.发现断网时间≤3个心跳周期(默认心跳周期为1分钟)

备注

长时间断网后重连

用例编号:AOS-3-25

用例名称:断网重连

测试目的:验证设备在断开连接后能恢复连接

用例属性:稳定性

测试步骤

1.设备认证连接,并保持在线状态(维持心跳)

2.待连接稳定后,断开网络(断AP WAN口)

3.1小时后恢复网络(恢复AP WAN口连接)

4.观察设备上线记录

预期结果

1.网络恢复后设备能够再次上线,时间间隔≤1个心跳周期(默认心跳周期1分钟)

2.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

反复建立连接和断开连接

用例编号:AOS-3-26

用例名称:反复建立连接和断开连接

测试目的:验证设备反复建立连接和断开连接的稳定性

用例属性:稳定性

测试步骤

1.设备认证连接,并保持在线状态(维持心跳)

2.5分钟后断开网络(断AP WAN口)

3.5分钟后恢复网络(恢复AP WAN口连接)

4.重复步骤2~3 100次

预期结果

1.设备上线次数100次,离线次数100次

2.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常

备注

自测重复10次即可

LinkKit 通道测试规范

设备认证及连接

用例编号AOS-3-34
用例名称:设备认证及连接
测试目的:验证设备通过身份认证并成功连接到阿里云Link物联网平台
例属性:必选 | 功能
预置条件
1.从阿里云Link物联网平台申请合法设备
2.设备通过命令行或者APP连上路由器(WiFi设备)
测试步骤
1.将设备三元组烧录至待测设备
2.设备上电,观察设备串口日志
3.登录一站式开发平台,查看设备在线状态
预期结果
1.设备串口日志显示连接成功
2.一站式开发平台显示设备在线
3.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常
备注
1.命令行配网:# netmgr connect {SSID} {PASSWD}
2.服务端相关操作详见LinkKit通道测试指南

设置设备属性

用例编号AOS-3-35
用例名称:设置设备属性
测试目的:验证设备能够接收服务端设置属性命令
用例属性:必选 | 功能
预置条件:设备连接至阿里云Link物联网平台
测试步骤
1.在阿里云一站式开发平台调试设备页面设置设备属性,属性的数据类型需要覆盖整型、浮点型、布尔型、字符串、枚举、时间类型、JSON
2.观察设备串口日志,确定是否接收到该属性设置
3.观察调试设备页面,确实是否显示设备下行和设备上行日志
预期结果
1.设备串口日志显示接收到属性设置,且属性值正确
2.6中数据类型的属性全部支持
3.调试设备页面显示设备下行和设备上行日志,日志中属性设置值正确
4.设备响应时长 < 1s
5.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常
备注
1.设备响应时长计算:在调试设备页面观察设备下行和设备上行日志,结合日志时间戳计算响应时长
2.服务端相关操作详见LinkKit通道测试指南

获取设备属性

用例编号AOS-3-36
用例名称:获取设备属性
测试目的:验证能获取设备属性值
用例属性:必选 | 功能
预置条件:设备连接至阿里云Link物联网平台
测试步骤
1.在阿里云一站式开发平台调试设备页面获取设备属性,属性的数据类型需要覆盖整型、浮点型、布尔型、字符串、枚举、时间类型、JSON
2.观察调试设备页面,观察返回的设备属性JSON
预期结果
1.调试设备页面返回正确的设备属性值
2.6中数据类型的属性全部支持
3.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常
备注:服务端相关操作详见LinkKit通道测试指南

设备服务调用

用例编号AOS-3-37
用例名称:设备服务调用
测试目的:验证设备响应服务端的服务调用
用例属性:必选 | 功能
预置条件
1.设备连接至阿里云Link物联网平台
2.设备支持服务
测试步骤
1.在阿里云一站式开发平台调试设备页面,输入服务的输入参数,调用服务
2.观察设备串口日志,确定是否接收到该服务调用
3.在设备详情->服务调用页面查看服务调用记录
预期结果
1.设备串口显示接收到服务调用,且输入参数符合预期
2.服务调用记录显示服务调用成功
3.设备响应时长 < 1s
4.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常
备注
1.设备响应时长计算:在调试设备页面观察设备下行日志和服务调用记录时间戳计算响应时长
2.服务端相关操作详见LinkKit通道测试指南

设备事件上报

用例编号AOS-3-38
用例名称:设备事件上报
测试目的:验证设备支持主动上报事件
用例属性:必选 | 功能
预置条件
1.设备连接至阿里云Link物联网平台
2.设备支持通过硬件按键触发事件上报
测试步骤
1.物理按键,触发事件
2.设备详情->事件管理页面查看设备事件管理
预期结果
1.设备事件管理列表显示最近一次事件调用
2.事件上报时长 < 1s
3.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常
备注
1.事件上报时长计算:设备端日志时间戳与服务端时间管理列表时间戳之差
2.服务端相关操作详见LinkKit通道测试指南

长时间连接稳定性

用例编号AOS-3-39
用例名称:长时间连接稳定性
测试目的:验证物联网设备与阿里云长时间连接稳定可靠
用例属性:必选 | 稳定性
预置条件
1.设备连接至阿里云Link物联网平台
2.网络环境长时间稳定可靠
测试步骤
1.设备上电,页面上确定设备上线,静置 5x24 小时
2.使用串口工具将设备串口日志定向到文件
3.5x24 小时后查看设备日志,选择设备上线日志、测试时间段,确定测试时间段内设备上线次数
4.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常
预期结果
1.5x24小时内设备离线次数≤3次
备注:服务端相关操作详见LinkKit通道测试指南

长时间数据通信稳定性

用例编号AOS-3-40
用例名称:长时间数据通行稳定性
测试目的:验证物联网设备与阿里云长时间数据通信稳定性
用例属性:必选 | 稳定性、性能
预置条件
1.设备连接至阿里云Link物联网平台
2.网络环境长时间稳定可靠
测试步骤
1.设备上电,页面上确定设备上线,静置 12 小时
2.使用串口工具将设备串口日志定向到文件
3.使用压测工具向该设备发送消息,发送周期为500ms
4.12 小时后查看压测工具,检查设备离线次数、丢包率
5.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常
预期结果
1.设备离线次数≤1次
2.成功率≥99%
备注
1.压测工具使用操作详见LinkKit通道测试指南

大数据包通信稳定

用例编号AOS-3-41
用例名称:大数据包通信稳定
测试目的:验证设备在数据量较大情况下能长时间稳定通信
用例属性:必选 | 稳定性
预置条件:设备连接至阿里云Link物联网平台
测试步骤
1.设备上电,页面上确认设备上线,静置 1 小时
2.使用串口工具将设备串口日志定向到文件
3.使用压测工具向该设备发送字符串类型数据,字符串长度为256字节,发送周期为500ms
4.1小时后查看压测工具,检查设备离线次数、丢包率
5.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异常
预期结果
1.压测期间无离线
2.成功率100%
备注
1.服务端相关操作详见LinkKit通道测试指南

断网发现与重连

用例编号AOS-3-42
用例名称:断网发现与重连
测试目的:验证设备在网络断开的情况下能发现网络异常并尝试重新连接阿里云
用例属性:必选 | 稳定性
预置条件:设备连接至阿里云Link物联网平台
测试步骤
1.待设备连接至阿里云Link物联网平台后,维持至少一个心跳周期
2.断开网络(断开AP LAN口),保持设备与AP的连接
3.观察设备串口日志判断设备是否尝试重连
4.一个心跳周期后会恢复网络连接
5.产看服务端设备在线状态
6.系统无crash,fail,error,assert,abort,内存泄漏,阻塞等异
预期结果
1.3个心跳周期内,设备发现网络断开并尝试重连
2.网络恢复后1个心跳周期内设备重新上线
备注: <<<<<<< HEAD
1.服务端相关操作详见LinkKit通道测试指南


1.服务端相关操作详见LinkKit通道测试指南

67322679e0d373b6dace4fdd1a768a5efd2f5506

Clone this wiki locally