一种嵌入式软件自动化确认测试方法及测试系统技术方案

技术编号:16499840 阅读:42 留言:0更新日期:2017-11-04 11:15
本发明专利技术公开一种嵌入式软件自动化确认测试方法及测试系统。所述测试方法包括测试流程定制、测试数据管理、测试流程解析、被测软件分析、测试结果分析、网络通讯、测试接口控制、测试时序控制、被测平台软件环境读取步骤。所述测试系统包括测试流程定制模块、测试数据管理模块、测试流程解析模块、被测软件分析器、测试结果分析模块、网络通讯模块、测试接口控制模块、测试时序控制模块、被测平台软件环境读取器。本发明专利技术通过解决嵌入式软件测试过程中测试用例的精确输入和被测软件输出的实时采集难题,在几乎不改变被测软件代码膨胀率的情况下对被测软件运行情况进行跟踪,为测试人员提供全自动和可视化的测试用例以及被测软件运行情况对应关系图。

An embedded software automated testing method and system validation

The invention discloses an embedded software automatic testing method and system validation. The test method comprises the testing process customization, test data management, test process analysis, tested software analysis and test result analysis, network communication, test interface control, timing control, test the tested platform software environment reading step. The test process customization module, test data management module, test flow analysis module, the software under test analyzer and test result analysis module, network communication module, test module, test control interface timing control module, the testing platform includes the reader software environment test system. The present invention through case testing process of embedded software testing in precise input and output real-time acquisition of the tested software problem in software code without changing the measured expansion rate under the condition of the tested software operation tracking, automatic test cases are provided and the visualization of the tested software and operation of corresponding relationship graph test personnel.

【技术实现步骤摘要】
一种嵌入式软件自动化确认测试方法及测试系统
本专利技术属于软件测试
,具体涉及一种被测软件代码膨胀率小、能够精确输入测试用例和实时采集被测软件输出的嵌入式软件自动化确认测试方法及测试系统。
技术介绍
随着嵌入式软件的大量应用及嵌入式软件的开发规模日益扩大,与之对应的嵌入式软件复杂程度也越来越高。由于嵌入式软件往往直接或间接控制一些硬件,及与硬件设备组成一个系统,在实际环境下如果嵌入式软件出现错误,可能使其控制的硬件设备处于异常状态,如果软件控制的是安全关键设备,其软件故障将对整个系统造成无法弥补的损失,甚至危及人身和财产安全。因此,目前对于嵌入式软件的测试也更加重视,软件提供商和客户都需要对嵌入式软件进行软件测试。嵌入式软件的测试一般包括单元测试、集成测试和功能确认测试,单元测试和集成测试可以使用软件测试工具(比如TESTBED软件工具)脱离硬件平台完成测试,而功能确认测试由于需要结合硬件平台完成测试,现有技术中测试人员通常在外部通过简单的手工方式(比如串口调试助手)来完成确认测试的输入和输出采集,因此无法保证在软件测试过程中测试用例的精确输入和被测软件输出数据获取的及时性、可读性,不仅测试过程费时费力且效率不高,而且也难以避免人为错误与不确定因素的产生。同时,如果在测试过程中被测软件出现崩溃,测试人员也无从发现软件的具体错误位置,严重影响测试效率和测试结果的可靠性。虽然也有采用其它手段来实现嵌入式软件的自动化确认测试方法,但往往会造成被测软件代码膨胀率过大,对于内存不丰富的嵌入式系统,不仅会造成内存告急,而且也会影响嵌入式系统的运行效率,影响测试结论。
技术实现思路
本专利技术的第一目的在于提供一种被测软件代码膨胀率小、能够精确输入测试用例和实时采集被测软件输出的嵌入式软件自动化确认测试方法;第二目的在于提供一种基于第一目的嵌入式软件自动化确认测试系统。本专利技术的第一目的是这样实现的:包括测试流程定制、测试数据管理、测试流程解析、被测软件分析、测试结果分析、网络通讯、测试接口控制、测试时序控制、被测平台软件环境读取步骤,具体包括:A、测试流程定制:测试人员根据测试用例需求定制测试流程;B、测试数据管理:以报表形式把A步骤定制的测试流程形成测试报表并供测试人员查询、历史回溯;C、测试流程解析:读取测试人员选择的测试报表并解析,将测试报表解析结果通过F步骤发送给G步骤和/或H步骤;D、被测软件分析:分析被测软件编译器产生的符号连接文件,并对全局数据值与环境地址进行关联以及软件运行位置与被测平台的指令寄存器值进行关联,为测试人员提供被测软件动态监控;E、测试结果分析:将上述C步骤的测试报表、D步骤得到的分析数据和G步骤采集的数据进行融合,为测试人员提供测试分析结果;F、网络通讯:将C步骤、D步骤和/或E与G步骤和/或H步骤进行网络数据交换;G、测试接口控制:根据接收的测试报表完成测试平台工作接口配置,根据H步骤的数据请求完成接口数据发送,以及采集I步骤回传的数据并通过F步骤发送至D步骤和/或E步骤;H、测试时序控制:根据接收的测试报表完成测试流程的创建,并根据测试报表的执行内容控制G步骤完成数据的发送和采集,根据测试报表的执行时机严格按时间点完成测试平台工作接口的操作;I、被测平台软件环境读取:在被测嵌入式软件基于操作系统运行时,将被测平台软件环境读取器运行于操作系统中,通过对操作系统内核的操作完成对被测软件环境数据的收集和发送;在被测嵌入式软件没有基于操作系统运行时,被测平台软件环境读取器运行于多个高优先级的中断中,通过中断完成对被测软件环境数据的采集和发送。本专利技术的第二目的是这样实现的:包括测试流程定制模块,用于测试人员根据测试用例需求定制测试流程;测试数据管理模块,用于以报表形式把上述定制的测试流程形成测试报表并供测试人员查询、历史回溯;测试流程解析模块,用于读取测试人员选择的测试报表并解析,将测试报表解析结果通过网络通讯模块发送给测试接口控制模块和/或测试时序控制模块;被测软件分析器,用于分析被测软件编译器产生的符号连接文件,并对全局数据值与环境地址进行关联以及软件运行位置与被测平台的指令寄存器值进行关联,为测试人员提供被测软件动态监控;测试结果分析模块,用于将测试流程解析模块的测试报表、被测软件分析器得到的分析数据和测试接口控制模块采集的数据进行融合,为测试人员提供测试分析结果;网络通讯模块,用于将测试流程解析模块、被测软件分析器和/或测试结果分析模块与测试接口控制模块和/或测试时序控制模块进行网络连接以实现数据交换;测试接口控制模块,用于根据接收的测试报表完成测试平台工作接口的配置,根据测试时序控制模块的数据请求完成接口数据的发送,以及采集被测平台软件环境读取器回传数据并通过网络通讯模块发送至被测软件分析器和/或测试结果分析模块;测试时序控制模块,用于根据接收的测试报表完成测试流程创建,并根据测试报表的执行内容控制测试接口控制模块完成数据的发送和采集,根据测试报表的执行时机严格按时间点完成测试平台工作接口的操作;被测平台软件环境读取器,用于在被测嵌入式软件基于操作系统运行时,将被测平台软件环境读取器运行于操作系统中并通过对操作系统内核的操作完成对被测软件环境数据的收集和发送;用于在被测嵌入式软件没有基于操作系统运行时,被测平台软件环境读取器运行于多个高优先级的中断中,通过中断完成对被测软件环境数据的采集和发送。本专利技术与现有技术相比具有以下有益效果:本专利技术根据测试用例需求定制测试流程,通过外置测试平台对测试接口控制和测试时序控制,结合植入被测嵌入式软件平台的被测平台软件环境读取器按测试报表操作或中断完成对环境数据的采集和发送,然后通过对测试报表、被测软件分析器得到的分析数据和环境读取器采集的数据进行融合分析,从而为测试人员提供测试分析结果。有效解决了现有技术中嵌入式软件在进行软件确认测试时测试用例的精确输入和被测软件输出的实时采集难题,而且在几乎不改变被测软件代码膨胀率的情况下对被测软件的运行情况进行跟踪,从而为测试人员提供了及时、可视化的测试用例和被测软件运行情况对应关系图,显著提高了测试的效率和测试结果的可靠性。因此,本专利技术具有被测软件代码膨胀率小、能够精确输入测试用例和实时采集被测软件输出的特点。附图说明图1为本专利技术之测试方法逻辑示意图;图2为本专利技术之测试系统原理结构示意图;图中:1-测试流程定制模块,2-测试数据管理模块,3-测试流程解析模块,4-被测软件分析器,5-测试结果分析模块,6-网络通讯模块,7-测试接口控制模块,8-测试时序控制模块,9-被测平台软件环境读取器,10-用户界面控制模块。具体实施方式下面结合附图和实施例对本专利技术作进一步的说明,但不以任何方式对本专利技术加以限制,基于本专利技术教导所作的任何变更或改进,均属于本专利技术的保护范围。如图1所示,本专利技术的嵌入式软件自动化确认测试方法包括测试流程定制、测试数据管理、测试流程解析、被测软件分析、测试结果分析、网络通讯、测试接口控制、测试时序控制、被测平台软件环境读取步骤,具体包括:A、测试流程定制:测试人员根据测试用例需求定制测试流程;B、测试数据管理:以报表形式把A步骤定制的测试流程形成测试报表并供测试人员查询、历史回溯;C、本文档来自技高网
...
一种嵌入式软件自动化确认测试方法及测试系统

【技术保护点】
一种嵌入式软件自动化确认测试方法,其特征在于包括测试流程定制、测试数据管理、测试流程解析、被测软件分析、测试结果分析、网络通讯、测试接口控制、测试时序控制、被测平台软件环境读取步骤,具体包括:A、测试流程定制:测试人员根据测试用例需求定制测试流程;B、测试数据管理:以报表形式把A步骤定制的测试流程形成测试报表并供测试人员查询、历史回溯;C、测试流程解析:读取测试人员选择的测试报表并解析,将测试报表解析结果通过F步骤发送给G步骤和/或H步骤;D、被测软件分析:分析被测软件编译器产生的符号连接文件,并对全局数据值与环境地址进行关联以及软件运行位置与被测平台的指令寄存器值进行关联,为测试人员提供被测软件动态监控;E、测试结果分析:将上述C步骤的测试报表、D步骤得到的分析数据和G步骤采集的数据进行融合,为测试人员提供测试分析结果;F、网络通讯:将C步骤、D步骤和/或E与G步骤和/或H步骤进行网络数据交换;G、测试接口控制:根据接收的测试报表完成测试平台工作接口配置,根据H步骤的数据请求完成接口数据发送,以及采集I步骤回传的数据并通过F步骤发送至D步骤和/或E步骤;H、测试时序控制:根据接收的测试报表完成测试流程的创建,并根据测试报表的执行内容控制G步骤完成数据的发送和采集,根据测试报表的执行时机严格按时间点完成测试平台工作接口的操作;I、被测平台软件环境读取:在被测嵌入式软件基于操作系统运行时,将被测平台软件环境读取器运行于操作系统中,通过对操作系统内核的操作完成对被测软件环境数据的收集和发送;在被测嵌入式软件没有基于操作系统运行时,被测平台软件环境读取器运行于多个高优先级的中断中,通过中断完成对被测软件环境数据的采集和发送。...

【技术特征摘要】
1.一种嵌入式软件自动化确认测试方法,其特征在于包括测试流程定制、测试数据管理、测试流程解析、被测软件分析、测试结果分析、网络通讯、测试接口控制、测试时序控制、被测平台软件环境读取步骤,具体包括:A、测试流程定制:测试人员根据测试用例需求定制测试流程;B、测试数据管理:以报表形式把A步骤定制的测试流程形成测试报表并供测试人员查询、历史回溯;C、测试流程解析:读取测试人员选择的测试报表并解析,将测试报表解析结果通过F步骤发送给G步骤和/或H步骤;D、被测软件分析:分析被测软件编译器产生的符号连接文件,并对全局数据值与环境地址进行关联以及软件运行位置与被测平台的指令寄存器值进行关联,为测试人员提供被测软件动态监控;E、测试结果分析:将上述C步骤的测试报表、D步骤得到的分析数据和G步骤采集的数据进行融合,为测试人员提供测试分析结果;F、网络通讯:将C步骤、D步骤和/或E与G步骤和/或H步骤进行网络数据交换;G、测试接口控制:根据接收的测试报表完成测试平台工作接口配置,根据H步骤的数据请求完成接口数据发送,以及采集I步骤回传的数据并通过F步骤发送至D步骤和/或E步骤;H、测试时序控制:根据接收的测试报表完成测试流程的创建,并根据测试报表的执行内容控制G步骤完成数据的发送和采集,根据测试报表的执行时机严格按时间点完成测试平台工作接口的操作;I、被测平台软件环境读取:在被测嵌入式软件基于操作系统运行时,将被测平台软件环境读取器运行于操作系统中,通过对操作系统内核的操作完成对被测软件环境数据的收集和发送;在被测嵌入式软件没有基于操作系统运行时,被测平台软件环境读取器运行于多个高优先级的中断中,通过中断完成对被测软件环境数据的采集和发送。2.根据权利要求1所述嵌入式软件自动化确认测试方法,其特征在于所述A、B、C、D、E和F步骤运行于上位机中,所述F、G、H步骤运行于测试平台,所述I步骤运行于被测平台。3.根据权利要求2所述嵌入式软件自动化确认测试方法,其特征在于所述C步骤是根据测试人员的选择操作,读取选择的测试报表并解析报表的正确性以防止测试接口错误使用,并根据解析结果创建测试流程报文发送至测试平台。4.根据权利要求2所述嵌入式软件自动化确认测试方法,其特征在于所述D步骤是根据被测软件编译器生成的执行文件符号表、测试平台返回的软件运行环境数据和被测软件程序代码,完成对被测软件程序语句当前执行位置定位统计、软件全局变量数据读取、软件程序语句故障位置定位。5.根据权利要求2所述嵌入式软件自动化确认测试方法,其特征在于所述H步骤是根据接测试报表数据完成创建测试流程控制序列,所述测试流程控制序列以预定的时间间隔周期进行定时,当定时时间到测试项规定时间后触发相应测试项动作。6.根据权利要求2所述嵌入式软件自动化确认测试方法,其特征在于所述I步骤中被测嵌入式软件基于linux操作系统时,被测平台软件环境读取器构建于linux内核代码中为进程环境读取器,或基于vxworks操作系统时,被测平台软件环境读取器构建于vxworks的BSP中为进程环境读取器,所述进程环境读取器使用钩子程序挂接至操作系统异常处理代码中,当系统异常出现时,首先检测当前代码是否是被测程序,如果是则发送异常至测试平台,但对堆栈扩展异常不做故障发送;所述进程环境读取器还监控与测试平台连接的通讯接口,当有读取地址值命令到达时调用内核函数完成数据采集。7.根据权利要求2所...

【专利技术属性】
技术研发人员:田耕
申请(专利权)人:昆明奥多智能科技有限公司
类型:发明
国别省市:云南,53

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1