发明内容
有鉴于此,本发明的主要目的在于提供一种实现M2M终端测试的系统,满足对M2M终端的入网测试要求。
本发明的另一目的在于提供一种实现M2M终端测试的方法,满足对M2M终端的入网测试要求。
本发明的又一目的在于提供一种M2M测试平台,满足对M2M终端的入网测试要求。
为达到上述目的,本发明的技术方案是这样实现的:
一种实现机器到机器M2M终端测试的系统,该系统包括门户、M2M测试平台及数据库,其中,
门户,用于建立测试任务,根据测试要求编辑与建立的测试任务对应的测试内容,将建立的测试任务和其对应的测试内容存储在数据库中;
M2M测试平台,在启动测试时,将数据库中的测试任务和其对应的测试内容存入M2M测试平台,M2M测试平台用于接收来自M2M终端上报的终端报文,查找到与该M2M终端对应的测试任务的测试内容,根据测试内容对该M2M终端进行测试。
所述M2M测试平台还用于,在未查找到与所述M2M终端对应的测试任务的测试内容时,执行正常流程。
一种实现机器到机器M2M终端测试的方法,该方法包括:
建立测试任务,根据测试要求编辑与建立的测试任务对应的测试内容,将建立的测试任务和其对应的测试内容存储在数据库中;
在启动测试时,当接收到来自M2M终端上报的终端报文时,根据数据库中的测试任务和其对应的测试内容,判断是否存在对应的测试内容,如果存在上报终端报文的M2M终端对应的测试内容,根据测试内容对该M2M终端进行测试。
所述建立测试任务包括:对应每个测试任务生成测试实例ID,在测试任务中设置终端序列号和国际移动身份标识IMEI。
所述测试内容包括测试报文具体内容,回应的顺序;
所述测试报文具体内容包括M2M报文头、标签/长度/值TLV以及摘要体;
所述测试报文为测试用例,一个测试实例ID对应一个或一个以上测试用例,不同的测试用例具有各自的测试用例ID;
所述测试报文包括上行消息和下行消息。
所述判断是否存在对应的测试内容具体包括:根据所述终端报文的命令字判断是否为注册消息,如果是注册消息,则根据终端报文中携带的国际移动身份标识IMEI,查找是否有对应的测试内容;如果不是注册消息,则根据终端序列号,查找是否有对应的测试内容。
所述查找是否有对应的测试内容具体为:查找IMEI或终端序列号是否有对应的测试实例,再根据测试实例记录中当前正在执行的测试用例字段,找到所属测试用例ID。
该方法还包括:所述判断出终端报文为注册消息时,如果所述注册消息携带有预先设置的终端序列号,则存储该终端序列号;如果未携带终端序列号,则查询与所述IMEI对应的测试实例中的终端序列号,并作为分配的终端序列号返回给终端。
一种机器到机器M2M测试平台,所述M2M测试平台包括接口单元和处理单元,其中,
接口单元,用于实现与M2M终端之间的信息交互;
处理单元,在启动测试时,将数据库中的测试任务和其对应的测试内容存入M2M测试平台,用于查找到与上报终端报文的M2M终端或接收报文的M2M终端对应的测试任务的测试内容,根据测试内容对该M2M终端进行测试;记录当前加载的测试用例已被执行到的报文序号。
所述处理单元还用于,存储接收到的终端报文以及解析后的终端报文。
从上述本发明提供的技术方案可以看出,本发明M2M测试平台在接收到来自M2M终端上报的终端报文时,查找到与该M2M终端对应的测试任务的测试内容,根据测试内容对该M2M终端进行测试。本发明M2M测试平台支持WMMP协议,提供了编辑用例,测试终端,终端打分,最终评价等多功能,实现了对M2M终端进行全方面的系统测试,达到了快速提高终端成熟度,满足了终端的大规模应用和衡量终端质量的要求。
具体实施方式
图1为本发明实现M2M终端测试的系统的组成结构示意图,如图1所示,该系统包括门户、M2M测试平台、数据库以及测试用M2M终端,其中,
门户,用于管理员建立测试任务,根据测试要求编辑与建立的测试任务对应的测试内容,将建立的测试任务和其对应的测试内容存储在数据库中;
M2M测试平台,在启动测试时,将数据库中的测试任务和其对应的测试内容存入M2M测试平台,M2M测试平台用于接收来自M2M终端上报的终端报文,查找到与该M2M终端对应的测试任务的测试内容,根据测试内容对该M2M终端进行测试。
M2M测试平台还用于,在向M2M终端发送报文,或再次接收到M2M终端的终端报文后,查找到与该M2M终端对应的测试任务的测试内容,根据测试内容对该M2M终端进行测试。
M2M测试平台还用于,保存接收到的终端报文以及解析后的终端报文。
所述M2M测试平台还用于,在未查找到与所述M2M终端对应的测试任务的测试内容时,按照现有商用模式的正常流程执行。
所述M2M终端,用于接收来自M2M的测试内容,进行判断并给出判断结果,判断结果可以是在M2M终端给出,也可以上报给M2M测试平台。
所述门户还用于,管理员根据测试情况记录测试结果并进行评定,或者接收来自M2M测试平台上报的测试结果,按照预设评定标准对测试结果进行评定。
本发明M2M测试平台具体包括接口单元和处理单元,其中,
接口单元,用于实现与M2M终端之间的信息交互;
处理单元,在启动测试时,将数据库中的测试任务和其对应的测试内容存入M2M测试平台,用于查找到与上报终端报文的M2M终端或接收报文的M2M终端对应的测试任务的测试内容,根据测试内容对该M2M终端进行测试;记录当前加载的测试用例已被执行到的报文序号。
所述处理单元还用于,保存接收到的终端报文以及解析后的终端报文。
图2为本发明实现M2M终端测试的方法的流程图,结合图1所示的M2M测试系统,如图2所示,本发明方法包括以下步骤:
步骤200:建立测试任务,根据测试要求编辑与建立的测试任务对应的测试内容。
对应每个测试任务自动生成测试实例ID。在测试任务中设置有终端序列号和国际移动身份标识(IMEI,International Mobile Equipment Identity)。
测试内容包括测试报文具体内容,回应的顺序等,测试报文为测试用例,对应一个测试实例ID,可包括一个或一个以上测试用例,不同的测试用例具有各自的测试用例ID。图3为本发明通过门户编辑报文的说明示意图,如图3所示,确认编辑完的报文按照顺序排列为报文1、报文2......报文n,并按照该排列顺序回应请求测试的终端。
测试报文具体内容包括:M2M报文头、标签/长度/值(TLV,Tag/Length/Value)以及摘要体等。由于对测试报文内容的编辑是由管理员直接控制的,可以满足测试终端在处理如流水号错误、摘要体错误、报文长度和实际报文长度不一致、不识别的TLV等多个相关项目进行测试。
测试报文分为上行消息(M2M终端发往M2M测试平台)和下行消息(M2M测试平台发往M2M终端)两种情况。通过门户上的操作,管理员可通过复制已有测试报文的方式产生新报文,并在此基础上进行修改,但是,在复制测试报文时,不复制该测试报文的条件表达式。
编辑好测试报文后,对测试报文进行排序,以决定收到来自M2M终端上报的终端报文后,依次回应给终端的内容。
测试报文头的属性包括:
(1)报文ID;
(2)所属测试用例ID;
(3)测试用例的通讯方式(短信或TCP、UDP);
(4)报文在用例中的序号(从0开始编号);
(5)报文属性(上行或下行);
(6)报文命令字(command Id,即对应于WMMP-T规范中的命令字);
(7)下行报文头安全标志;
(8)是否回应错误的下行报文头流水号;
(9)是否发送错误的下行报文头序列号;
(10)固定字段内容、必选TLV、可选TLV列表;
(11)延迟时间(秒),及系统收到请求报文后延迟下发的时间;
(12)部分加密或全部加密;
(13)必选字段错误是否应答;
(14)必选字段错误代码。
图4为协议规定的支持WMMP的报文格式示意图,上述编辑的报文遵循图4所示的报文格式,对图4所示的报文格式这里不再详述。
步骤201:判断是否存在上报终端报文的M2M终端对应的测试内容,如果存在,进入步骤203,否则进入步骤202。
根据终端报文的命令字(即command Id)判断是否为注册消息,如果是注册消息,则根据终端报文中携带的IMEI,查找是否有对应的测试内容,如果存在,进入步骤203;如果不存在,进入步骤202。如果不是注册消息,则根据终端序列号,查找是否有对应的测试内容,如果存在,进入步骤203;如果不存在,进入步骤202。
查找是否有对应的测试内容具体为:查找IMEI或终端序列号是否有对应的测试实例,再根据测试实例记录中当前正在执行的测试用例字段,找到所属测试用例ID。对于请求测试的M2M终端,可以查找到其对应的测试实例ID,以及当前正在执行的测试用例ID。
步骤202:退出测试流程。按照现有商用模式的正常流程执行。
步骤203:根据测试内容对该M2M终端进行测试。
M2M测试平台记录当前加载的测试用例已被执行到的报文序号,当根据IMEI或终端序列号查找到测试用例时,根据当前的报文序号,获得下一条应该进行处理的报文。
进一步地,对于注册消息,如果该注册消息携带有预先设置的终端序列号(即预置序列号注册的情况),则存储该终端序列号;如果未携带终端序列号(即请求M2M测试平台分配注册的情况),则查询与IMEI对应的测试实例中的终端序列号,并作为分配的终端序列号返回给终端,以完成终端注册。
完成测试后本发明方法还包括:管理员对测试结果进行评定,或者根据所述M2M终端返回的测试结果进行评定。具体包括:
在M2M终端完成一个测试用例测试后,管理员根据测试情况,可选择给M2M终端进行打分和/或记录评语。如果管理员选择不对终端进行打分,系统会根据是否满足测试结果,给出10分(表示测试成功)或者0分(表示测试失败)两种情况。在完成一个用例的测试后可进行下一个用例测试,或者结束测试。最后存储同一个M2M终端的全部测试用例的测试分数,或者按照预设算法给出一个综合评定分数,预设算法可以是求平均,或者加权平均等。
需要说明的是,如果M2M终端将测试结果上报给M2M测试平台,则M2M测试平台根据测试结果判断是否正确,并给出给出10分(表示测试成功)或者0分(表示测试失败)的评定。
下面结合实施例说明利用本发明M2M测试平台实现对M2M终端的测试具体方法,图5为本发明实现M2M终端测试的实施例的流程图,如图5所示,包括:
步骤500~步骤503:建立测试实例1,并设置IMEI和终端序列号;对应该测试实例,编辑测试报文1为测试终端验证摘要情况,填写测试报文的报文头的各个字段,并将摘要编辑为错误的,本实施例中假设不需要填写TLV;最后保存测试报文1为测试用例1。
步骤504:假设接收到的终端报文不是注册报文,则根据终端序列号查找到测试用例1,并向对应的M2M终端返回编辑有错误摘要的测试报文1。
步骤505:获取M2M终端收到测试报文1后,对该错误测试报文1的处理结果。本步骤可以有两种实现方式,要么管理员查看终端的处理结果以获得测试结果,要么由终端生成测试结果后直接向M2M测试平台上报测试结果。
步骤506:对获得的测试结果选择是否进行打分评定,如果需要,完成打分后记录评定结果,并确认结束测试用例1的测试。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。