ICA AT指令集测试规范

更新时间:2019-05-06 19:57:03

1. 适用范围

本测试规范遵循ICA AT指令集规范

以下标注可选的测试项,若不支持该功能则无需测试,若支持则必测

2. MQTT AT指令测试规

2.1 IMQTTMODE 指令测试(可选)

用例编号:WL-AT-MQTT-101

用例名称:IMQTTMODE指令测试(可选)

测试目的:验证模组IMQTTMODE指令

测试步骤
1.模组处于开放环境,模组上电
2.串口输入如下指令:
AT+IMQTTMODE=0
AT+IMQTTMODE?
3.串口输入如下指令:
AT+IMQTTMODE=2
AT+IMQTTMODE?
4.串口输入如下指令:
AT+IMQTTMODE=3
AT+IMQTTMODE?
5.串口输入如下指令:
AT+IMQTTMODE=1
AT+IMQTTMODE?
6.串口输入如下指令:
AT+IMQTTMODE=a
AT+IMQTTMODE?

预期结果
1.步骤2,设置成功,读取到为mode0
2.步骤3,设置失败,读取到为mode0
3.步骤4,设置失败,读取到为mode0
4.步骤5,设置成功,读取到为mode1
5.步骤6,设置失败,读取到为mode1

备注

2.2 IMQTTOPEN指令(可选)

用例编号:WL-AT-CoAP-201

用例名称:IMQTTOPEN指令

测试目的:验证模组IMQTTOPEN指令

测试步骤
1.模组处于开放环境,模组上电
2.分别通过串口输入如下内容:
AT+IMQTTOPEN="productxxx.aliyuncs.com",1883
AT+IMQTTOPEN="139.196.135.135",1883
3.串口输入如下:
AT+IMQTTOPEN="productxxx.aliyuncs.com",1883,1234
AT+IMQTTOPEN="139.196.135.135",1883,1234
4.串口输入如下:
AT+IMQTTOPEN="ABC",1883
AT+IMQTTOPEN="139.196.135.135",1883
5.串口输入如下:
AT+IMQTTOPEN="productxxx.aliyuncs.com",1883
AT+IMQTTOPEN="ABC",1883

预期结果
1.步骤2,设置成功
2.步骤3,设置失败
3.步骤4,设置失败
4.步骤5,设置失败

备注:仅支持ICA联盟AT指令集规范 v0.6及以上版本


2.3 IMQTTAUTH 指令测试

用例编号:WL-AT-MQTT-102

用例名称:IMQTTAUTH 指令测试

测试目的:验证模组IMQTTAUTH指令

测试步骤
1.模组处于开放环境,模组上电
2.串口输入如下指令
AT+IMQTTAUTH="productkey","devicename","devicesecret"
AT+IMQTTAUTH?
3.串口输入如下指令:
AT+IMQTTAUTH="abc","def","xyz"
AT+IMQTTAUTH?
4.串口输入如下指令:
AT+IMQTTAUTH="productkey","devicename"
AT+IMQTTAUTH?
5.串口输入如下指令:
AT+IMQTTAUTH="productkey"
AT+IMQTTAUTH?
6.串口输入如下指令:
AT+IMQTTAUTH="productkey","devicename","devicesecret","abc"
AT+IMQTTAUTH?

预期结果
1.步骤2,执行成功,认证成功;读取到的key为productkey
2.步骤3,执行成功,认证失败;读取到的key为abc
3.步骤4,设置失败,读取到的key为abc
4.步骤5,设置失败,读取到的key为abc
5.步骤6,设置失败,读取到的key为abc

备注


2.4 IMQTTPARA 指令测试

用例编号:WL-AT-MQTT-103

用例名称:IMQTTPARA 指令测试

测试目的:验证模组IMQTTPARA指令

测试步骤
1.模组处于开放环境,模组上电
2.分别通过串口输入x等于0,0.5, 1,1.5, 10,a,空
AT+IMQTTPARA="TIMEOUT",x
2.分别通过串口输入x等于0,0.5, 1,1.5, 10,a,空
AT+IMQTTPARA="CLEAN",x
3.分别通过串口输入x等于0,1,60,100,180,200,a,空
AT+IMQTTPARA="KEEPALIVE",x
4.分别通过串口输入x等于3.1,3.1.1,1.0,a,空
AT+IMQTTVERSION="VERSION",x

预期结果
1.步骤2,0.1、0.5、1、1.5、10执行返回成功,0、a、空 执行失败
2.步骤3,0、1执行返回成功,0.5、1.5、10、a、空 执行失败
3.步骤4,60、100、180执行返回成功,0、1、200、a、空执行失败
4.步骤5,3.1、3.1.1执行成功,1.0、a、空 执行失败

备注:timeout取值范围由厂商合理定义,keepalive取值范围60~180秒


2.5 IMQTTCONN 指令测试

用例编号:WL-AT-MQTT-104

用例名称:IMQTTCONN 指令测试

测试目的:验证模组IMQTTCONN指令

测试步骤
1.模组处于开放环境,模组上电
2.模组已通过AT输入IMQTTAUTH相应参数,并配置了IMQTTPARA参数
3.通过串口输入:AT+IMQTTCONN
4.模组清空参数,不做IMQTTAUTH,直接:AT+IMQTTCONN
5.模组清空参数,做了AT+IMQTTAUTH,但是不设置IMQTTPARA,进行AT+IMQTTCONN
6.模组内置参数,做了AT+IMQTTAUTH,但是不设置IMQTTPARA,进行AT+IMQTTCONN

预期结果
1.步骤3,返回执行成功
2.步骤4,返回执行失败
3.步骤5,返回执行失败
4.步骤6,返回执行成功

备注:模组内置参数取值范围符合ICA标准


2.6 IMQTTPUB 指令测试

用例编号:WL-AT-MQTT-105

用例名称:IMQTTPUB 指令测试

测试目的:验证模组IMQTTPUB指令

测试步骤
1.模组处于开放环境,模组上电
2.模组已通过AT输入IMQTTAUTH相应参数,并配置了IMQTTPARA参数,执行了AT+IMQTTCONN连接成功
3.通过串口输入如下指令:
AT+IMQTTPUB="/productkey/devicename/update",0,"hello world"
4.串口输入如下指令:
AT+IMQTTPUB="abc",1,"hello world"
5.串口输入如下指令:
AT+IMQTTPUB="abc",4,"hello world"
6.串口分别输入参数个数1,2,4个:
如1个参数,则串口输入: AT+IMQTTPUB="abc"

预期结果
1.步骤3,返回成功
2.步骤4,返回执行成功
3.步骤5,返回执行失败
4.步骤6,参数非3个的,都返回执行失败

备注


2.7 IMQTTSUB 指令测试

用例编号:WL-AT-MQTT-106

用例名称:IMQTTSUB 指令测试

测试目的:验证模组IMQTTSUB指令

测试步骤
1.模组处于开放环境,模组上电
2.模组已通过AT输入IMQTTAUTH相应参数,并配置了IMQTTPARA参数,执行了AT+IMQTTCONN连接成功
3.串口输入如下指令:
AT+IMQTTSUB="/productkey/devicename/get",0
4.串口输入如下指令:
AT+IMQTTSUB="abc",1
5.串口输入如下指令:
AT+IMQTTPSUB="abc"

预期结果
1.步骤3,返回成功
2.步骤4,返回执行失败
3.步骤5,返回执行失败

备注


2.8 IMQTTUNSUB 指令测试

用例编号:WL-AT-MQTT-107

用例名称:IMQTTUNSUB 指令测试

测试目的:验证模组IMQTTUNSUB指令

测试步骤
1.模组处于开放环境,模组上电
2.模组已通过AT输入IMQTTAUTH相应参数,并配置了IMQTTPARA参数,执行了AT+IMQTTCONN连接成功
3.串口输入如下指令:
AT+IMQTTSUB="/productkey/devicename/get",0
4.串口输入如下指令:
AT+IMQTTUNSUB="/productkey/devicename/get"
5.串口输入如下指令:
AT+IMQTTUNSUB="/productkey/devicename/get",0
6.串口输入如下指令:
AT+IMQTTPUNSUB="abc"

预期结果
1.步骤3,返回成功
2.步骤4,返回成功
3.步骤5,返回执行失败
4.步骤6,返回执行失败

备注


2.9 IMQTTRCVPUB 指令测试

用例编号:WL-AT-MQTT-108

用例名称:IMQTTRCVPUB指令测试

测试目的:验证模组IMQTTRCVPUB指令

测试步骤
1.模组处于开放环境,模组上电
2.模组已通过AT输入IMQTTAUTH相应参数,并配置了IMQTTPARA参数,执行了AT+IMQTTCONN连接成功
3.串口输入如下指令:
AT+IMQTTSUB="/productkey/devicename/get",0
4.从云端控制台,向/productkey/devicename/get publish消息(qos=1/0)

预期结果
1.步骤3,返回成功
2.步骤4,云端下发消息后,设备串口打印收到此消息内容

备注


2.10 IMQTTSTATE/IMQTTDISCONN 指令测试

用例编号:WL-AT-MQTT-109

用例名称:IMQTTSTATE/IMQTTDISCONN指令测试

测试目的:验证模组IMQTTSTATE/IMQTTDISCONN指令

测试步骤
1.模组处于开放环境,模组上电
2.模组已通过AT输入IMQTTAUTH相应参数,并配置了IMQTTPARA参数,执行了AT+IMQTTCONN连接成功
3.串口输入如下指令:
AT+IMQTTSTATE?
4.串口输入如下指令
AT+IMQTTDISCONN
5.串口输入如下指令:
AT+IMQTTSTATE?

预期结果
1.步骤3,返回状态1或2
2.步骤4,返回成功
3.步骤5,返回状态0

备注


2.11 支持TLS/非TLS通信(可选)

用例编号:WL-AT-MQTT-110

用例名称:支持TLS/非TLS通信(可选)

测试目的:验证模组可以通过TLS认证连接至阿里云

测试步骤
1.模组处于开放环境,模组上电
2.通过串口工具发送指令AT+IMQTTMODE=1(如不支持TLS,则此处为默认值)
3.配置认证、连接参数,建立连接,pub消息
4.设备订阅 /productkey/devicename/get
5.服务端web控制台向/productkey/devicename/get发布消息
6.串口发送AT+IMQTTMODE=0(如不支持TLS,则此处为默认值)
7.重复步骤3~5

预期结果
1.步骤2、3,每一步都设置成功,且模组pub消息,服务端收到此消息
2.步骤5,服务端发布消息后,设备端收到
3.步骤7,mode为0后,设备发布订阅可正常通信

备注


2.12 支持QoS0/QoS1

用例编号:WL-AT-MQTT-111

用例名称:支持QoS0/QoS1

测试目的:验证模组可以支持发布QoS0和QoS1消息

测试步骤
1.模组处于开放环境,模组上电
2.通过串口工具发送指令AT+IMQTTMODE=1(如不支持TLS,则此处为默认值)
3.配置认证、连接参数,建立连接,pub QoS为1的消息
4.再pub QoS为0的消息

预期结果
1.步骤3,设备端可以发布qos=1的消息
2.步骤4,设备端可以发布qos=0的消息

备注


2.13 支持心跳

用例编号:WL-AT-MQTT-112

用例名称:支持心跳

测试目的:验证模组心跳机制生效

测试步骤
1.模组处于开放环境,模组上电
2.通过串口工具发送指令AT+IMQTTMODE=1(如不支持TLS,则此处为默认值)
3.配置认证、连接参数,其中,keepalive字段,设置为90
4.建立连接
5.keepalive字段再设置为180,建立连接

预期结果
1.步骤4,模组每隔90s发送ping request
2.步骤5,模组每隔180s发送ping request

备注


2.14 支持session配置

用例编号:WL-AT-MQTT-113

用例名称:支持session配置

测试目的:验证模组session配置生效

测试步骤
1.模组处于开放环境,模组上电
2.通过串口工具发送指令AT+IMQTTMODE=1(如不支持TLS,则此处为默认值)
3.配置认证、连接参数,其中,clean session字段,设置为0,
4.建立连接,设备订阅/productkey/devicename/get
5.断开连接(使用AT+IMQTTDISCONN断开连接),服务端web控制台向/productkey/devicename/get发布消息
6.建立连接,设备端可以收到服务端下发的缓存信息
7.clean session字段再设置为1,重复步骤4、5、6

预期结果
1.步骤4、6,可成功建立连接
2.步骤6,clean=0时,设备端可以收到云端的缓存信息
3.步骤7,clean=1时,设备端不可以收到云端的缓存信息

备注


2.15 取消订阅

用例编号:WL-AT-MQTT-114

用例名称:取消订阅

测试目的:验证模组取消订阅生效

测试步骤
1.模组处于开放环境,模组上电
2.通过串口工具发送指令AT+IMQTTMODE=1(如不支持TLS,则此处为默认值)
3.配置认证、连接参数,建立连接
4.模组sub /productkey/devicename/get
5.服务端通过控制台向/productkey/devicename/get 发布消息
6.模组AT+IMQTTUNSUB="/productkey/devicename/get"
7.服务端通过控制台向/productkey/devicename/get 发布消息

预期结果
1.步骤5,模组收到服务端下发的消息
2.步骤7,模组无法收到服务端下发的消息

备注


2.16 断开连接

用例编号:WL-AT-MQTT-115

用例名称:断开连接

测试目的:验证模组断开连接生效

测试步骤
1.模组处于开放环境,模组上电
2.通过串口工具发送指令AT+IMQTTMODE=1(如不支持TLS,则此处为默认值)
3.配置认证、连接参数,建立连接
4.模组sub /productkey/devicename/get
5.服务端通过控制台向/productkey/devicename/get 发布消息
6.模组AT+IMQTTDISCONN
7.服务端通过控制台向/productkey/devicename/get 发布消息
8.模组pub消息

预期结果
1.步骤5,模组收到服务端下发的消息
2.步骤7,模组无法收到服务端下发的消息
3.步骤8,模组无法pub出去消息

备注


2.17 大数据包支持

用例编号:WL-AT-MQTT-116

用例名称:大数据包支持

测试目的:验证模组支持大数据包通信

测试步骤
1.模组处于开放环境,模组上电
2.通过串口工具发送指令AT+IMQTTMODE=1(如不支持TLS,则此处为默认值)
3.配置认证、连接参数,建立连接
4.模组sub /productkey/devicename/get
5.服务端通过控制台向/productkey/devicename/get 发布消息,payload为512B~2KB大小
6.模组pub /productkey/devicename/update,payload为512B大小

预期结果
1.步骤5,模组收到服务端下发的消息,payload与从服务端下发的消息完全一致
2.步骤6,服务端收到模组上报的消息,payload与从设备端上报的消息完全一致

备注


2.18 反复建立连接

用例编号:WL-AT-MQTT-117

用例名称:反复建立连接

测试目的:验证模组反复建立连接不出现异常

测试步骤
1.模组处于开放环境,模组上电
2.通过串口工具发送指令AT+IMQTTMODE=1(如不支持TLS,则此处为默认值)
3.配置认证、连接参数,其中clean session为0
4.AT+IMQTTCONN
5.AT+IMQTTDISCONN
6.不断重复步骤4、5,重复100次,每N秒循环一次

预期结果
1.步骤5,100次不断建立连接时,设备不会出现死机、重启等异常,且无连接失败的情况

备注:N为设备成功连接的平均时间


2.19 反复认证、连接

用例编号:WL-AT-MQTT-118

用例名称:反复认证、连接

测试目的:验证模组反复认证、连接不出现异常

测试步骤
1.模组处于开放环境,模组上电
2.通过串口工具发送指令AT+IMQTTMODE=1(如不支持TLS,则此处为默认值)
3.配置认证、连接参数、建立连接
4.不断重复步骤3,重复100次,每N秒循环一次

预期结果
1.步骤4,100次不断建立连接时,设备不会出现死机、重启等异常,且无认证、连接失败的情况

备注:N为设备成功auth的平均时间


3. CoAP AT指令测试规范

3.1 ICOAPARA指令

用例编号:WL-AT-CoAP-201

用例名称:ICOAPARA指令

测试目的:验证模组ICOAPARA指令

测试步骤
1.模组处于开放环境,模组上电
2.分别通过串口输入如下内容:
AT+ICOAPARA="TIMEOUT",1
3.串口输入如下:
AT+ICOAPARA="TIMEOUT",a
4.串口输入如下:
AT+ICOAPARA="TIMEOUT"
5.串口输入如下:
AT+ICOAPARA="ABC",1
6.串口输入如下:
AT+ICOAPARA="TIMEOUT",10

预期结果
1.步骤2,设置成功,读取到timeout为1
2.步骤3,设置失败,读取到timeout为1
3.步骤4,设置失败,读取到timeout为1
4.步骤5,设置失败,读取到timeout为1
5.步骤6,设置成功,读取到timeout为10

备注:ICA标准不对timeout做限制,由厂商合理定义取值范围

3.2 ICOAOPEN指令(可选)

用例编号:WL-AT-CoAP-201

用例名称:ICOAPOPEN指令

测试目的:验证模组ICOAPOPEN指令

测试步骤
1.模组处于开放环境,模组上电
2.分别通过串口输入如下内容:
AT+ICOAPOPEN="productxxx.aliyuncs.com",5684
AT+ICOAPOPEN="139.196.135.101",5684
3.串口输入如下:
AT+ICOAPOPEN="productxxx.aliyuncs.com",5684,1234
AT+ICOAPOPEN="139.196.135.101",5684,1234
4.串口输入如下:
AT+ICOAPOPEN="ABC",5684
AT+ICOAPOPEN="139.196.135.101",5684
5.串口输入如下:
AT+ICOAPOPEN="productxxx.aliyuncs.com",5684
AT+ICOAPOPEN="ABC",5684

预期结果
1.步骤2,设置成功
2.步骤3,设置失败
3.步骤4,设置失败
4.步骤5,设置失败

备注:仅支持ICA联盟AT指令集规范 v0.6及以上版本

3.3 ICOAPAUTH指令测试

用例编号:WL-AT-CoAP-202

用例名称:ICOAPAUTH指令测试

测试目的:验证模组ICOAPAUTH指令

测试步骤
1.模组处于开放环境,模组上电
2.分别通过串口输入如下内容
AT+ICOAPAUTH="productkey","devicename","devicesecret"
AT+ICOAPAUTH?
3.串口输入如下:
AT+ICOAPAUTH="abc","def","xyz"
AT+ICOAPAUTH?
4.串口输入如下:
AT+ICOAPAUTH="productkey","devicename"
AT+ICOAPAUTH?
5.串口输入如下:
AT+ICOAPAUTH="productkey"
AT+ICOAPAUTH?
6.串口输入如下:
AT+ICOAPAUTH="productkey","devicename","devicesecret","abc"
AT+IMQTTAUTH?

预期结果
1.步骤2,执行成功,认证成功;读取到的key为productkey
2.步骤3,执行成功,认证失败;读取到的key为abc
3.步骤4,设置失败,读取到的key为abc
4.步骤5,设置失败,读取到的key为abc
5.步骤6,设置失败,读取到的key为abc

备注

3.4 收发字符串数据支持转义符

用例编号:WL-AT-CoAP-203

用例名称ICOAPSENDREQ 指令测试

测试目的:验证模组 字符串数据支持转义符 指令

测试步骤
1.模组处于开放环境,模组上电
2.模组已通过AT输入ICOAPAUTH相应参数
3.通过串口输入
AT+ICOAPSENDREQ=2,"topic/ProductKey/DeviceName/updata","hello world"
4.串口输入
AT+ICOAPSENDREQ=2,"topic/ProductKey/DeviceName/updata","{\"action\":\"turnon\"}"
5.串口输入
AT+ICOAPSENDREQ=2,"topic/ProductKey/DeviceName/updata","0001AC",1

预期结果
1.步骤3,返回成功,且云端收到的数据一致
2.步骤4,返回成功,且云端收到的数据一致
3.步骤5,返回成功,且云端收到的数据一致

备注:仅支持ICA联盟AT指令集规范 v0.6及以上版本

3.5 ICOAPSENDREQ 指令测试

用例编号:WL-AT-CoAP-204

用例名称ICOAPSENDREQ 指令测试

测试目的:验证模组 ICOAPSENDREQ 指令

测试步骤
1.模组处于开放环境,模组上电
2.模组已通过AT输入ICOAPAUTH相应参数
3.通过串口输入
AT+ICOAPSENDREQ=2,"topic/ProductKey/DeviceName/updata","hello world"
4.串口输入
AT+ICOAPSENDREQ=2,"abc","hello worl"
5.串口输入
AT+ICOAPSENDREQ=2,"abc"

预期结果
1.步骤3,返回成功
2.步骤4,返回执行失败
3.步骤5,返回执行失败

备注

3.6 大数据包支持

用例编号:WL-AT-CoAP-205

用例名称:大数据包支持

测试目的:验证模组支持大数据包

测试步骤
1.模组处于开放环境,模组上电
2.模组已通过AT输入ICOAPAUTH相应参数
3.串口输入:
AT+ICOAPSENDREQ=2,"topic/ProductKey/DeviceName/updata","payload"

预期结果
1.步骤5,模组收到服务端下发的消息,payload与从服务端下发的消息完全一致
2.步骤6,服务端收到模组上报的消息,payload与从设备端上报的消息完全一致

备注:其中mqtt通道payload最小支持512B大小;CoAP通道payload最小支持256B大小

3.7 反复认证、数据通信

用例编号:WL-AT-CoAP-206

用例名称:反复认证、数据通信

测试目的:验证模组反复认证、数据通信不出现异常

测试步骤
1.模组处于开放环境,模组上电
2.串口输入:
AT+ICOAPAUTH="productkey","devicename","devicesecret"
3.串口输入:
AT+ICOAPSENDREQ=2,"topic/ProductKey/DeviceName/updata","hello world"
4.不断重复步骤2,重复100次,每X秒循环一次

预期结果
1.步骤4,100次不断建立连接时,设备不会出现死机、重启等异常,且无认证、连接失败的情况

备注:X为成功AUTH一次的平均时间

results matching ""

    No results matching ""