多设备通用自动化测试方法及系统与流程

文档序号:32837882发布日期:2023-01-06 19:47阅读:32来源:国知局
多设备通用自动化测试方法及系统与流程

1.本发明涉及物联网设备测试领域,具体涉及一种多设备通用自动化测试方法及系统。


背景技术:

2.随着物联网技术发展,出现大量基于各种通讯协议的物联网设备,如果针对每一种设备进行单独测试,存在测试功能重复度高、测试维护复杂、学习成本高、通用性低、执行效率低、人工测试学习成本高、测试执行不可靠等诸多问题。


技术实现要素:

3.本发明的目的是提供一种多设备通用自动化测试方法及系统,实现了对多种物联网设备的自动化测试,提高了测试的通用性,以及测试效率。
4.本发明采取如下技术方案实现上述目的,多设备通用自动化测试方法,包括:
5.根据设备的通讯方式,将设备抽象为具有上线、离线、发现、连接、断连、发送数据以及接收数据功能的虚拟设备,并将各种通讯方式封装成统一接口,统一接口与虚拟设备通信;
6.将待测设备通过统一接口接入测试系统,基于测试配置文件对虚拟设备进行自动化测试;所述自动化测试中的测试动作由动作函数库提供,函数库包含有所有用于测试的动作,并可动态识别并加载未包含在系统库中但符合编写规范的额外动作库,将一个或多个动作进行组合完成一个测试流程,每个动作执行成功后会自动下一个动作,一个完整的测试流程使用一个测试配置文件进行描述,系统通过读取配置文件进行自动化测试;
7.所述测试配置文件包括:设备通讯方式、测试过程中传入动作函数的数据、测试动作、测试顺序、失败重试次数、重试动作范围、动作超时时间、测试过程的界面提示、测试过程中由动作执行可获取到的数据、全局变量数据的预期值、前端界面显示项与全局变量数据的绑定关系、测试过程出现异常后的分支执行流程。
8.所述通讯方式包括ble蓝牙通讯、wi-fi通讯、串口通讯以及zigbee通讯。
9.进一步的是,测试过程中涉及到的数据以及参数的具体数值在测试开始前提前写入或在测试过程中由配置规则和测试动作动态生成。
10.每个测试流程中的动作根据待测试设备实际情况、配置文件中的内容设置输入参数及执行参数进行灵活的测试,并可输出测试结果数据供测试流程使用,测试流程根据配置的触发条件自动开始执行。
11.进一步的是,所述触发条件包括:扫描到符合配置要求的无线设备、串口收到配置内定义的来自设备的内容输出、测试系统ping通配置内定义的ip地址以及人工点击前端界面按钮。
12.进一步的是,根据配置文件内容,前端界面可实时显示测试过程中产生的数据,并可根据配置文件中定义实时生成界面按钮,当某些测试动作中需要人工确认时,人工通过
界面按钮控制必要的测试过程。
13.进一步的是,每个测试动作独立判断测试是否成功,或将执行结果想全局变量输出,与配置文件中定义的输出预期值进行比较,根据比较结果判断测试是否成功。
14.进一步的是,该方法还包括在测试过程使用日志进行测试记录,测试记录包括:测试信息、配置文件加载信息、测试运行环境信息、与设备的交互通讯内容、测试动作产生的信息及输入、输出数据、测试过程逻辑流程信息以及人工操作内容。
15.多设备通用自动化测试系统,包括测试流程控制模块,所述测试流程控制模块基于测试配置文件对设备进行自动化测试;所述自动化测试中的测试动作由动作函数库提供,函数库包含有所有用于测试的动作,并可动态识别并加载未包含在系统库中但符合编写规范的额外动作库,将一个或多个动作进行组合完成一个测试流程,每个动作执行成功后会自动下一个动作,一个完整的测试流程使用一个测试配置文件进行描述,系统通过读取配置文件进行自动化测试;
16.所述测试配置文件包括:设备通讯方式、测试过程中传入动作函数的数据、测试动作、测试顺序、失败重试次数、重试动作范围、动作超时时间、测试过程的界面提示、测试过程中由动作执行可获取到的数据、全局变量数据的预期值、前端界面显示项与全局变量数据的绑定关系、测试过程出现异常后的分支执行流程。
17.进一步的是,该系统还包括日志模块与前端界面,所述前端界面用于根据配置文件内容,实时显示测试过程中产生的数据,并可根据配置文件中定义实时生成界面按钮,当某些测试动作中需要人工确认时,人工通过界面按钮控制必要的测试过程;所述日志模块用于在测试过程使用日志进行测试记录,测试记录包括:测试信息、配置文件加载信息、测试运行环境信息、与设备的交互通讯内容、测试动作产生的信息及输入、输出数据、测试过程逻辑流程信息以及人工操作内容。
18.本发明的有益效果为:
19.本发明根据设备的通讯方式,将设备抽象为具有上线、离线、发现、连接、断连、发送数据以及接收数据功能的虚拟设备,并将各种通讯方式封装成统一接口,统一接口与虚拟设备通信,这样待测设备接入后,测试过程针对虚拟设备进行操作,极大的提高了测试的通用性;
20.测试过程涉及的数据以及参数的具体数值在测试开始前提前写入或在测试过程中由配置规则和测试动作动态生成,提高了测试灵活性;
21.多种触发条件,保障了测试流程的顺利执行;
22.在测试过程中,提供了人工控制的界面按钮,提高了自动化测试的可靠性;
23.提供多种测试结果的判定,提高了测试结果的准确性。
附图说明
24.图1为本发明实施例提供的多设备通用自动化测试的系统结构框图;
25.图2为本发明实施例提供的将设备抽象为虚拟设备的示意图;
26.图3为本发明实施例提供的测试流程图。
具体实施方式
27.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
28.本发明将各种设备通讯方式进行抽象统一为相同操作方式,定义一套标准的应用通讯规范,将设备接入测试系统后,基于测试配置文件,对测试过程进行自动化、模块化测试,由前端界面显示测试过程及结果,并由日志系统记录测试过程,具体方案如下。
29.本发明多设备通用自动化测试方法,包括:
30.根据设备的通讯方式,将设备抽象为具有上线、离线、发现、连接、断连、发送数据以及接收数据功能的虚拟设备,并将各种通讯方式封装成统一接口,统一接口与虚拟设备通信;具体抽象过程如图2所示,将通讯方式包括ble蓝牙通讯、wi-fi通讯、串口通讯以及zigbee通讯的物联网设备抽象为虚拟设备,测试流程控制对虚拟设备进行操作;
31.将待测设备通过统一接口接入测试系统,基于测试配置文件对虚拟设备进行自动化测试;所述自动化测试中的测试动作由动作函数库提供,函数库包含有所有用于测试的动作,并可动态识别并加载未包含在系统库中但符合编写规范的额外动作库,将一个或多个动作进行组合完成一个测试流程,每个动作执行成功后会自动下一个动作,一个完整的测试流程使用一个测试配置文件进行描述,系统通过读取配置文件进行自动化测试;
32.所述测试配置文件包括:设备通讯方式、测试过程中传入动作函数的数据、测试动作、测试顺序、失败重试次数、重试动作范围、动作超时时间、测试过程的界面提示、测试过程中由动作执行可获取到的数据、全局变量数据的预期值、前端界面显示项与全局变量数据的绑定关系、测试过程出现异常后的分支执行流程。
33.所述通讯方式包括ble蓝牙通讯、wi-fi通讯、串口通讯以及zigbee通讯。
34.测试过程中涉及到的数据以及参数的具体数值在测试开始前提前写入或在测试过程中由配置规则和测试动作动态生成。
35.每个测试流程中的动作根据待测试设备实际情况、配置文件中的内容设置输入参数及执行参数进行灵活的测试,并可输出测试结果数据供测试流程使用,测试流程根据配置的触发条件自动开始执行。
36.所述触发条件包括:扫描到符合配置要求的无线设备、串口收到配置内定义的来自设备的内容输出、测试系统ping通配置内定义的ip地址以及人工点击前端界面按钮。
37.根据配置文件内容,前端界面可实时显示测试过程中产生的数据,并可根据配置文件中定义实时生成界面按钮,当某些测试动作中需要人工确认时,人工通过界面按钮控制必要的测试过程。
38.每个测试动作独立判断测试是否成功,或将执行结果想全局变量输出,与配置文件中定义的输出预期值进行比较,根据比较结果判断测试是否成功。
39.本发明多设备通用自动化测试方法还包括在测试过程使用日志进行测试记录,测试记录包括:测试信息、配置文件加载信息、测试运行环境信息、与设备的交互通讯内容、测试动作产生的信息及输入、输出数据、测试过程逻辑流程信息以及人工操作内容。
40.多设备通用自动化测试系统,如图1所示,包括测试流程控制模块,所述测试流程
控制模块基于测试配置文件对设备进行自动化测试;所述自动化测试中的测试动作由动作函数库提供,函数库包含有所有用于测试的动作,并可动态识别并加载未包含在系统库中但符合编写规范的额外动作库,将一个或多个动作进行组合完成一个测试流程,每个动作执行成功后会自动下一个动作,一个完整的测试流程使用一个测试配置文件进行描述,系统通过读取配置文件进行自动化测试;
41.所述测试配置文件包括:设备通讯方式、测试过程中传入动作函数的数据、测试动作、测试顺序、失败重试次数、重试动作范围、动作超时时间、测试过程的界面提示、测试过程中由动作执行可获取到的数据、全局变量数据的预期值、前端界面显示项与全局变量数据的绑定关系、测试过程出现异常后的分支执行流程。
42.该系统还包括日志模块与前端界面,所述前端界面用于根据配置文件内容,实时显示测试过程中产生的数据,并可根据配置文件中定义实时生成界面按钮,当某些测试动作中需要人工确认时,人工通过界面按钮控制必要的测试过程;所述日志模块用于在测试过程使用日志进行测试记录,测试记录包括:测试信息、配置文件加载信息、测试运行环境信息、与设备的交互通讯内容、测试动作产生的信息及输入、输出数据、测试过程逻辑流程信息以及人工操作内容。
43.本发明实施例提供测试流程如图3所示,具体包括:
44.步骤1、测试系统加载扩展函数库;
45.步骤2、加载配置文件;
46.步骤3、根据配置文件创建全局数据变量,创建前端界面,从动作函数库加载动作;
47.步骤4、等待条件触发自动化测试流程;
48.步骤5、触发自动化测试流程,传入执行参数,输入数据;
49.步骤6、执行测试动作1;
50.步骤7、判断测试动作1是否执行成功,若否,则进入步骤8,若是,则进入步骤9;
51.步骤8、判断是否达到重试次数上限,若是则测试失败,结束;若否,则进入步骤6;
52.步骤9、输出参数到全局变量;
53.步骤10、判断数据是否满足预期值,若否,则进入步骤8;若是,则进入步骤11;
54.步骤11、判断是否还有未执行的测试动作,若否,则测试完成;若是,则继续测试动作2到n;动作2-动作n的测试流程与动作1一致。
55.综上所述,本发明实现了对多种物联网设备的自动化测试,极大地提高了测试的通用性,进一步提高了测试效率。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1