本申请属于计算机,具体涉及一种嵌入式设备的自动化测试系统及方法。
背景技术:
1、目前,在嵌入式设备的应用领域中,尤其是医疗器械领域,对嵌入式设备的测试仍然存在很多难题和挑战,面对嵌入式设备紧张的硬件资源对于性能和功能限制性、对系统的实时性、稳定性、可靠性的高要求,测试工作的开展是有局限性的。
2、在嵌入式设备的性能测试工作中,需要测试人员按照测试大纲的测试用例逐一进行操作,将系统设定到预设条件后,再次进行操作,等待操作生效,最后验证测试结果是否符合预期。测试工作需要消耗大量的时间以及人力物力,同时具有测试验证过程复杂、验证场景多、沟通成本高、自动化程度低的特点,这些特点也导致了嵌入式设备产品开发周期长,研发成本高的结果。在批量生产中,检验过程也需要大量测试人员进行验证。因此,如何设计一种能够提高测试效率的接入应用的自动化测试方法,成为本领域亟需解决的重要课题。
技术实现思路
1、本申请的目的在于克服现有嵌入式设备测试过程周期长,研发成本高的缺陷。
2、为了实现上述目的,本申请提出了一种嵌入式设备的自动化测试系统,其特征在于,所述自动化测试系统包括:
3、自动化测试数据传输协议定义模块,用于定义自动化测试过程中配置信息、实时数据信息、测试指令信息和反馈信息的传输协议;
4、测试用例识别模块,用于输入测试用例,形成测试指令,以及控制测试用例的执行流程;和
5、通信模块,用于与被测嵌入式设备通信,传输配置信息、实时数据信息、测试指令信息和反馈信息。
6、作为上述系统的一种改进,所述配置信息,是包含被测嵌入式设备的可配置项以及配置状态的信息;
7、所述配置信息的类型包括:设备信息配置信息、病人信息配置信息、监测参数配置信息、波形数据配置信息、报警配置信息、模式配置信息和系统参数配置信息;
8、配置信息由被测嵌入式设备发送到所述自动化测试系统。
9、作为上述系统的一种改进,所述实时数据信息,包含被测嵌入式设备在运行过程中状态变化时产生的实时数据信息,用于监控被测嵌入式设备的运行状态;
10、所述实时数据信息包括:实时报警、实时监测参数、实时波形和当前模式;
11、所述实时数据信息由被测嵌入式设备发送到所述自动化测试系统。
12、作为上述系统的一种改进,所述测试指令信息,是所述自动化测试系统根据测试大纲对被测嵌入式设备进行测试的指令信息;
13、所述测试指令信息由所述自动化测试系统发送到被测嵌入式设备。
14、作为上述系统的一种改进,所述反馈信息,是被测嵌入式设备完成测试指令信息的配置任务后的配置信息;
15、所述反馈信息在执行测试指令结束后立即将指令中所关注的配置信息反馈给所述自动化测试系统。
16、作为上述系统的一种改进,所述测试用例识别模块,控制测试用例的执行流程包括:执行开始时间、执行结束时间、执行顺序和异常处理;
17、所述异常处理包括网络通信异常和测试指令执行异常;
18、所述测试指令执行异常,为所述自动化测试系统在收到被测嵌入式设备的反馈信息后,经过与测试指令比对,配置与预期不一致,被测嵌入式设备没有达到测试用例所需运行状态;此时所述自动化测试系统将再一次发送该测试用例的测试指令信息,直到状态达到预期,或发送次数达到设定重复发送最大次数时,不再继续发送该测试用例,对该测试用例的运行结果给出执行异常的提示,开始执行下一测试用例。
19、作为上述系统的一种改进,所述通信模块进行数据传输是以消息队列的形式传输;
20、所述消息队列中的每个消息包带有消息主题;
21、所述消息主题的形式为:发送方名称/接收方名称/被测嵌入式设备id/消息类型/数据类型。
22、作为上述系统的一种改进,所述自动化测试系统还包括通信库;
23、所述通信库,部署在被测嵌入式设备中,兼容不同嵌入式设备的操作系统,包含所述自动化测试数据传输协议定义模块中所定义的传输协议,将信息发送功能封装为由被测嵌入式设备的原生系统调用的接口,用于被测嵌入式设备与所述通信模块之间进行信息交互。
24、作为上述系统的一种改进,所述自动化测试系统还包括测试报告分析与生成模块;
25、所述测试报告分析与生成模块,用于根据接收的被测嵌入式设备的测试指令执行结果的数据,生成测试报告。
26、本申请还提供一种嵌入式设备的自动化测试方法,基于上述系统实现,所述方法包括:
27、步骤s101:自动化测试系统与被测嵌入式设备启动连接;
28、步骤s102:自动化测试系统根据测试用例发出测试指令;
29、步骤s103:被测嵌入式设备接收并解析指令;将接收到的指令按照自动化测试数据传输协议进行解析;
30、步骤s104:被测嵌入式设备执行指令;
31、步骤s105:被测嵌入式设备将执行指令后的配置状态按照自动化测试数据传输协议格式发送到自动化测试系统;
32、步骤s106:自动化测试系统接收到被测嵌入式设备发送的反馈结果之后,根据测试用例的预设信息进行判断,然后决定是否继续执行下一个测试用例。
33、作为上述方法的一种改进,所述步骤s101包括:
34、被测嵌入式设备向自动化测试系统发送设备信息;
35、自动化测试系统接收到设备信息后,回复确认接收信息;
36、被测嵌入式设备收到确认接受信息后,启动心跳保活机制,并且开始发送配置信息;
37、自动化测试系统接收到配置信息后保存信息,待收到全部配置信息后,回复确认连接信息;
38、被测嵌入式设备收到确认连接信息后,进入测试指令接收等待状态。
39、与现有技术相比,本申请的优势在于:
40、1、本申请能够根据测试大纲输入测试用例,更加有效率的编写测试用例脚本,使得自动化测试系统能够读取脚本,转化为测试设置指令,还能够控制执行测试指令的流程,以及设置通过条件以外的特殊条件。更易于测试人员操作,更加友好的、人性化的提供测试用例设置流程。
41、2、本申请能够根据在测试过程中被测嵌入式设备发出的实时数据,实时的监测被测嵌入式设备的状态,有利于回溯测试过程,便于定位、分析问题;
42、3、本申请提供完整的通信模块,为被测嵌入式设备提供通信模块方法库以及接口。使得被测嵌入式设备能够更好的保证原有业务逻辑的完整性;
43、4、本申请还提供了测试报告生成模块,提供数据分析功能等,能够为测试工作提高效率,将数据价值发挥到最大,对被测嵌入式设备的数据回溯以及研究具有辅助作用。
1.一种嵌入式设备的自动化测试系统,其特征在于,所述自动化测试系统包括:
2.根据权利要求1所述的嵌入式设备的自动化测试系统,其特征在于,所述配置信息,是包含被测嵌入式设备的可配置项以及配置状态的信息;
3.根据权利要求1所述的嵌入式设备的自动化测试系统,其特征在于,所述实时数据信息,包含被测嵌入式设备在运行过程中状态变化时产生的实时数据信息,用于监控被测嵌入式设备的运行状态;
4.根据权利要求1所述的嵌入式设备的自动化测试系统,其特征在于,所述测试指令信息,是所述自动化测试系统根据测试大纲对被测嵌入式设备进行测试的指令信息;
5.根据权利要求1所述的嵌入式设备的自动化测试系统,其特征在于,所述反馈信息,是被测嵌入式设备完成测试指令信息的配置任务后的配置信息;
6.根据权利要求1所述的嵌入式设备的自动化测试系统,其特征在于,所述测试用例识别模块,控制测试用例的执行流程包括:执行开始时间、执行结束时间、执行顺序和异常处理;
7.根据权利要求1所述的嵌入式设备的自动化测试系统,其特征在于,所述通信模块进行数据传输是以消息队列的形式传输;
8.根据权利要求1所述的嵌入式设备的自动化测试系统,其特征在于,所述自动化测试系统还包括通信库;
9.根据权利要求1所述的嵌入式设备的自动化测试系统,其特征在于,所述自动化测试系统还包括测试报告分析与生成模块;
10.一种嵌入式设备的自动化测试方法,基于权利要求1-9所述任一系统实现,所述方法包括:
11.根据权利要求10所述的嵌入式设备的自动化测试方法,其特征在于,所述步骤s101包括: