一种航空简图页软件测试框架构建方法
【专利摘要】本发明公开了一种航空简图页软件测试框架构建方法,其特征在于,包括如下步骤:步骤一:构建用户应用程序系统;步骤二:构建主控服务系统;步骤三:构建数据激励系统。本发明一种航空简图页软件测试框架构建方法可以在硬件设备尚未就绪的情况下,在普通计算机上对简图页软件进行系统测试,尽早发现并修复问题,减少开发测试的周期与成本。
【专利说明】 一种航空简图页软件测试框架构建方法
【技术领域】
[0001]本发明涉及一种测试框架构建方法,具体涉及一种航空简图页软件测试框架构建方法。
【背景技术】
[0002]随着航空电子的综合化程度和人机交互要求的不断提高,以及航空厂商提供的电子器件接口各不相同,ARINC公司针对飞机座舱显示系统CDS (Cockpit Display System,飞机座舱显示系统)到用户系统UA(User Application,用户系统)的接口定义了规范ARINC661,陆续被空客(A380、A400)、波音(787)等航空公司使用,并经过不断的修订,已逐渐成为行业规范。
[0003]ARINC661旨在规范座舱显示系统⑶S的定义,以及⑶S与用户系统UA的通信。在具体实现方式上,采用了定义文件DF (Definition File,定义文件)来描述⑶S的界面显示与维护⑶S和UA的通信。
[0004]ARINC661提出的图形显示与逻辑处理分离的理念,极大地解除了⑶S和UA间的耦合关系,主要体现在两方面:(I)处理逻辑的更改不会影响⑶S的外观显示,因而处理逻辑需要变换时,仅需对应修改UA,大大提高了系统分布式处理的能力,也使得单个UA的测试简单易行;(2)在初始化阶段,CDS内核能够创建由DF定义的GUI层次,如果GUI的设计发生变化,或是随着型号的变化而不同,除非引入新的感官效果,均无需更换仪表,也不需要重新编译数字化仪表的嵌入式程序。如图1所示为UA与CDS之间通信示意图。
[0005]目前我国民用航空刚起步,各种技术尚处于摸索阶段,对于如何验证航空简图页软件尚未形成规范,每个公司都有自己的一套方法,但都不完整,不够全面。
【发明内容】
[0006]为解决现有技术的不足,本发明的目的在于提供一种航空简图页软件测试框架构
建方法。
[0007]为了实现上述目标,本发明采用如下的技术方案:
一种航空简图页软件测试框架构建方法,其特征在于,包括如下步骤:
步骤一:构建用户应用程序系统,所述用户应用程序系统包括多个用户应用程序,每个用户应用程序通过ARINC661协议与图形显示系统通信,进行显示系统的更新;单个用户应用程序通过共享内存块与外部应用程序进行交互,所述共享内存块分为输入区域与输出区域,输入区域只负责读数据,数据包括此用户应用程序的所有输入参数;输出区域只负责写入数据,数据包括此用户应用程序的所有输出参数;在一个周期内,用户应用程序首先从共享内存块的输入区域读取输入参数,然后进行自身的逻辑功能运算,再将输出结果写回至共享内存的输出区域;
步骤二:构建主控服务系统,所述主控服务系统负责从配置文件中导入各系统参数,并创建共享内存块,然后接收激励数据,并分配至对应系统的激励队列,最后更新共享内存块对应区域;
步骤三:构建数据激励系统,所述数据激励系统负责测试用例的读取与执行,以及最后的测试报告的生成。
[0008]前述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤二包括: 步骤2a:导入配置文件;
步骤2b:计算测试系统所需内存;
步骤2c:为测试系统分配内存空间;
步骤2d:创建激励队列;
步骤2e:接收消息服务;
步骤2f:更新数据。
[0009]前述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2a包括:配置文件以XML格式存放,定义了参与测试的所有子系统,每个系统下面定义了输入、输出参数,每个参数定义包括名称和数据类型。
[0010]前述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2b包括:根据导入的各个测试系统,分别计算输入、输出所需内存,以及总的内存量;同时记录每个系统的使用内存相对起始位置,以及系统内参数的偏移量。
[0011]前述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2c包括:根据所述总的内存量,在物理内存申请一段连续的内存空间,如果分配失败则直接退出系统。
[0012]前述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2d包括:为每个测试系统分配一个激励队列,队列长度固定,以先进先出的方式处理数据。
[0013]前述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2e包括:接收从脚本发来的消息,根据消息所属系统分配给对应系统的激励队列。
[0014]前述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2f包括:按系统预定义的速率从当前系统的激励队列中获取消息,如果是更新操作,则将数据写入对应系统的输入参数中即对应内存位置,如果是读取操作,则从对应系统的输出参数中即对应内存位置获取数据。
[0015]前述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤三包括: 步骤3a:加载主控服务系统包;
步骤3b:读取测试用例;
步骤3c:执行测试用例;
步骤3d:生成测试报告。
[0016]前述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤3a包括:数据激励系统会在初始化时候自动加载主控服务系统包,为测试脚本执行提供必要的运行环境,主要是以类的形式导入消息接口 ;所述步骤3b包括:把用户期望执行、选中的测试用例导入执行队列;不被选中的测试用例则不被执行;所述步骤3c包括:按读取的先后顺序执行测试用例,通过主控服务系统包接口调用的方式,进行数据的发送与接收,主控服务系统再将数据分发到对应系统的共享内存;执行过程的每一个步骤都将详细记录在执行日志当中,一个测试用例对应一个执行日志;所述步骤3d包括:根据本次执行的所有测试用例的执行日志,进行汇总分析,最后进行格式化输出,生成用户需要的测试报告文档。
[0017]本发明的有益之处在于:本发明一种航空简图页软件测试框架构建方法可以在硬件设备尚未就绪的情况下,在普通计算机上对简图页软件进行系统测试,尽早发现并修复问题,减少开发测试的周期与成本。
【专利附图】
【附图说明】
[0018]图1是UA与⑶S之间通信示意图;
图2是本发明一种航空简图页软件测试框架构建方法的流程图;
图3是本发明一种航空简图页软件测试框架构建方法中主控服务系统构建和运行流程图;
图4是本发明一种航空简图页软件测试框架构建方法中数据激励系统构建和运行流程图;
图5是本发明一种航空简图页软件测试框架构建方法的共享内存数据流程图。
【具体实施方式】
[0019]以下结合附图和具体实施例对本发明作具体的介绍。
[0020]参照图2至图5所示,本发明可以对航空简图页软件进行一体化测试,包括⑶S服务器,UA逻辑模型、脚本数据激励三大部分,完全遵循ARINC661通信协议。在硬件设备尚未就绪的情况下,在普通计算机上对简图页软件进行系统测试,尽早发现并修复问题,减少开发测试的周期与成本。
[0021]本测试框架技术主要是对航空简图页软件进行验证,主要分为三大部分:
第一部分为被测对象,即用户应用程序系统,可包括多个用户应用程序,每个用户应用
程序通过ARINC661协议与图形显示系统通信,进行显示系统的更新。单个用户应用程序通过内存共享技术与外部应用程序进行交互,共享内存块分为输入与输出区域。输入区域只负责读数据,数据包括此用户应用程序的所有输入参数;输出区域只负责写入数据,数据包括此用户应用程序的所有输出参数。在一个周期内,用户应用程序首先从共享内存的输入区域读取输入参数,然后进行自身的逻辑功能运算,再将输出结果写回至共享内存的输出区域。
[0022]此部分采用C编写,保证接口按规范编写即可。
[0023]第二部分为主控服务系统,是测试框架的核心部分,主要负责从配置文件中导入各系统参数,并创建共享内存块,然后接收激励数据,并分配至对应系统的激励队列,最后更新共享内存对应区域。
[0024]主控服务系统分为以下几个步骤:
第一步:导入配置文件。
[0025]配置文件以XML格式存放,定义了参与本次测试的所有子系统,每个系统下面定义了输入、输出参数,每个参数定义包括名称和数据类型。配置文件层次关系为:文档——系统——输入、输出——参数(包含名称、类型等属性)。
[0026]第二步:计算测试系统所需内存。
[0027]根据导入的各个系统,分别计算输入、输出所需内存,以及最后总的内存。同时还需要记录每个系统的使用内存相对起始位置,以及系统内参数的偏移量,为后期的数据更新做准备。为了内存对齐或者计算方便,中间允许出现填充的内存块。
[0028]第三步:为测试系统分配内存空间。
[0029]根据前面计算好的总的内存量,在物理内存申请一段连续的内存空间,如果分配失败则直接退出系统。可根据实际情况改为每个测试系统独立分配内存的方法,但内存总需求量是不变的。
[0030]第四步:创建激励队列。
[0031]内存分配完成后,即可为每个测试系统分配一个激励队列,队列长度固定,以先进先出的方式处理数据,保证了激励数据不丢失。
[0032]第五步:接收消息服务。
[0033]接收消息服务负责接收从脚本发来的消息,根据消息所属系统分配给对应系统的激励队列
第六步:更新数据。
[0034]按系统预定义的速率从当前系统的激励队列中获取消息,如果是更新操作,则将数据写入对应系统的输入参数中即对应内存位置,如果是读取操作,则从对应系统的输出参数中即对应内存位置获取数据。
[0035]此部分米用C/C++编写。
[0036]第三部分为数据激励系统,负责测试用例的读取与执行,以及最后的测试报告的生成。
[0037]数据激励系统分为以下几个步骤:
第一步:加载主控服务系统包。
[0038]数据激励系统会在初始化时候自动加载主控服务系统包,为测试脚本执行提供必要的运行环境,主要是以类的形式导入消息接口。主控服务系统包是数据激励系统与主控服务系统的连接纽带,将测试执行过程的消息发送到主控服务系统的消息接收服务中心。
[0039]第二步:读取测试用例。
[0040]把用户期望执行、选中的测试用例导入执行队列。不被选中的测试用例则不被执行。测试用例为脚本类文件,如Python,内容包括定量循环赋值、简单取值判断等,只负责接口数据的处理。
[0041]第三步:执行测试用例。
[0042]按读取的先后顺序执行测试用例,通过主控服务系统包接口调用的方式,进行数据的发送与接收,达到与主控服务系统交互的目的,主控服务系统再将数据分发到对应系统的共享内存。执行过程的每一个步骤都将详细记录在执行日志当中,一个测试用例对应一个执行日志。
[0043]第四步:生成测试报告。
[0044]根据本次执行的所有测试用例的执行日志,进行汇总分析,最后进行格式化输出,生成用户需要的测试报告文档,文档格式可以是TXT、HTML、XML等。
[0045]数据激励系统采用C++编写,测试用例脚本语言可根据用户测试环境选择。
[0046]整个测试框架如下图:
在使用共享内存时候,每个系统都有自己的空间,且只有一个数据源可以对它进行写操作,但是允许多个用户应用程序去读取。用户应用程序只与主控服务系统有数据交互,数据激励系统中脚本执行只与主控服务系统有数据交互,主控服务系统作为一个数据服务,承担消息上传下达的作用。
[0047]本发明一种航空简图页软件测试框架构建方法可以在硬件设备尚未就绪的情况下,在普通计算机上对简图页软件进行系统测试,尽早发现并修复问题,减少开发测试的周期与成本。
[0048]以上显示和描述了本发明的基本原理、主要特征和优点。本行业的技术人员应该了解,上述实施例不以任何形式限制本发明,凡采用等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。
【权利要求】
1.一种航空简图页软件测试框架构建方法,其特征在于,包括如下步骤: 步骤一:构建用户应用程序系统,所述用户应用程序系统包括多个用户应用程序,每个用户应用程序通过ARINC661协议与图形显示系统通信,进行显示系统的更新;单个用户应用程序通过共享内存块与外部应用程序进行交互,所述共享内存块分为输入区域与输出区域,输入区域只负责读数据,数据包括此用户应用程序的所有输入参数;输出区域只负责写入数据,数据包括此用户应用程序的所有输出参数;在一个周期内,用户应用程序首先从共享内存块的输入区域读取输入参数,然后进行自身的逻辑功能运算,再将输出结果写回至共享内存的输出区域; 步骤二:构建主控服务系统,所述主控服务系统负责从配置文件中导入各系统参数,并创建共享内存块,然后接收激励数据,并分配至对应系统的激励队列,最后更新共享内存块对应区域; 步骤三:构建数据激励系统,所述数据激励系统负责测试用例的读取与执行,以及最后的测试报告的生成。
2.根据权利要求1所述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤二包括: 步骤2a:导入配置文件; 步骤2b:计算测试系统所需内存; 步骤2c:为测试系统分配内存空间; 步骤2d:创建激励队列; 步骤2e:接收消息服务; 步骤2f:更新数据。
3.根据权利要求2所述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2a包括:配置文件以XML格式存放,定义了参与测试的所有子系统,每个系统下面定义了输入、输出参数,每个参数定义包括名称和数据类型。
4.根据权利要求3所述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2b包括:根据导入的各个测试系统,分别计算输入、输出所需内存,以及总的内存量;同时记录每个系统的使用内存相对起始位置,以及系统内参数的偏移量。
5.根据权利要求4所述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2c包括:根据所述总的内存量,在物理内存申请一段连续的内存空间,如果分配失败则直接退出系统。
6.根据权利要求5所述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2d包括:为每个测试系统分配一个激励队列,队列长度固定,以先进先出的方式处理数据。
7.根据权利要求6所述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2e包括:接收从脚本发来的消息,根据消息所属系统分配给对应系统的激励队列。
8.根据权利要求7所述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤2f包括:按系统预定义的速率从当前系统的激励队列中获取消息,如果是更新操作,则将数据写入对应系统的输入参数中即对应内存位置,如果是读取操作,则从对应系统的输出参数中即对应内存位置获取数据。
9.根据权利要求8所述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤三包括: 步骤3a:加载主控服务系统包; 步骤3b:读取测试用例; 步骤3c:执行测试用例; 步骤3d:生成测试报告。
10.根据权利要求8所述的一种航空简图页软件测试框架构建方法,其特征在于,所述步骤3a包括:数据激励系统会在初始化时候自动加载主控服务系统包,为测试脚本执行提供必要的运行环境,主要是以类的形式导入消息接口 ;所述步骤3b包括:把用户期望执行、选中的测试用例导入执行队列;不被选中的测试用例则不被执行;所述步骤3c包括:按读取的先后顺序执行测试用例,通过主控服务系统包接口调用的方式,进行数据的发送与接收,主控服务系统再将数据分发到对应系统的共享内存;执行过程的每一个步骤都将详细记录在执行日志 当中,一个测试用例对应一个执行日志;所述步骤3d包括:根据本次执行的所有测试用例的执行日志,进行汇总分析,最后进行格式化输出,生成用户需要的测试报告文档。
【文档编号】G06F11/36GK103942139SQ201310702867
【公开日】2014年7月23日 申请日期:2013年12月19日 优先权日:2013年12月19日
【发明者】兰积钱, 夏高明, 周明珠, 薛郝, 汤挺 申请人:江苏锐天信息科技有限公司