CN104699613B - 一种航天器测试需求自动生成***及其方法 - Google Patents

一种航天器测试需求自动生成***及其方法 Download PDF

Info

Publication number
CN104699613B
CN104699613B CN201510134653.3A CN201510134653A CN104699613B CN 104699613 B CN104699613 B CN 104699613B CN 201510134653 A CN201510134653 A CN 201510134653A CN 104699613 B CN104699613 B CN 104699613B
Authority
CN
China
Prior art keywords
test
testing
testing requirement
demand
class
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201510134653.3A
Other languages
English (en)
Other versions
CN104699613A (zh
Inventor
孟祥曦
吕江花
高世伟
黎涛
马世龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing precision digital intelligent technology Co.,Ltd.
Original Assignee
Beihang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN201510134653.3A priority Critical patent/CN104699613B/zh
Publication of CN104699613A publication Critical patent/CN104699613A/zh
Application granted granted Critical
Publication of CN104699613B publication Critical patent/CN104699613B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明是一种航天器测试需求自动生成***及其方法,属于***测试领域。所述***包括测试需求库、UML模型读取模块、被测目标抽取模块和测试需求构建模块;测试需求库是经过积累的各型号被测***、分***、单机和模块所需的测试需求;UML模型读取模块对基于UML的状态转换图和交联图转换为XML格式存储;被测目标抽取模块抽取被测目标的测试环境需求;测试需求构建模块用于构建静态测试需求和动态测试需求。所述方法基于上述***,根据被测目标的类名、接口名称以及总线名称构建静态测试需求,依据状态转换图构建动态测试需求。本发明实现了对航天器测试需求模型所包含信息的完备抽取,自动生成测试需求,减少重复工作,提高工作效率。

Description

一种航天器测试需求自动生成***及其方法
技术领域
本发明属于***测试领域,涉及一种在航天器测试中的测试需求自动生成的***与方法。
背景技术
航天器是一种安全攸关的实时***。对于航天器的测试需求必须既可以描述被测***的功能、性能特征,也能够描述***的约束。测试需求模型是用来指导测试人员开展后续测试活动、方便测试人员与设计人员之间的沟通的工具。测试需求文档是测试人员通过《开发需求说明书》、《接口控制文档》、《设计文档》和《用户手册》整理得来,帮助测试人员设计出更贴近需求的测试的文档。也可以帮助测试人员准确的了解需求的变化从而快速更改测试方案。
由于航天器***作为高集成度复杂电子***的典型,其测试需求达到上万项。现有的测试需求生成方法集中在如何获取被测***的静态需求,而在获取动态需求方面现有方法则过于复杂,不便于测试人员理解和使用。因此在目前的工程实践中,由于***过于复杂,测试人员通常依据其测试经验人工编写测试需求文档。这极大的延长了测试工作的时间。为了减少重复性工作,加快测试进度,实现测试需求的自动生成是非常有必要的。
目前关于测试需求模型的主要研究有面向UUT(Unit Under Test,被测模块)的测试需求模型,和基于模型测试需求模型。其中面向UUT的测试需求模型主要面向的是测试设备和测试单元,通过分析被测***的逻辑给出测试所需要的激励信号,是从硬件层面对被测单元进行测试需求建模。基于模型特别是基于UML(Unified Modeling Language,标准建模语言)的测试需求模型,其主要是通过状态图和类图描述被测***,对被测***的静态结构和动态结构进行测试需求建模。但是这些工作都是以理论研究为主,仅给出一种测试需求建模方法,测试人员仍然需要通过人工的方式生成测试需求。而如何从测试需求模型生成真正满足实际的测试需求的技术和方法却很少。
发明内容
本发明为了减少测试人员选取测试需求的时间,提高测试效率。提供了一种面向航天器的测试需求自动化获取***及方法。本发明通过分析被测***基于UML的状态转换图和交联图的测试需求模型,并根据被测***级别和一种遍历算法,找出被测***的测试需求。被获取的测试需求可以根据用户要求转变成不同格式的文本输出。
本发明提供了一种航天器测试需求自动生成***,包括测试需求库、UML模型读取模块、被测目标抽取模块和测试需求构建模块。针对被测航天器按照模块级、单机级、分***级和***级分别绘制基于UML的状态转换图和交联图。
所述的测试需求库是经过积累的各型号被测***、分***、单机和模块所需的测试需求,包含环境测试需求库、总线测试需求库和接口测试需求库。测试需求库的数据结构包括:被测产品名称,被测产品类型,被测产品测试需求,被测产品的接口名称和接口类型,以及被测产品关联的总线名称和总线类型。
所述的UML模型读取模块对基于UML的状态转换图和交联图抽取对应的XML存储结构,并将状态转换图和交联图转换为XML格式的模型存储。在XML格式的交联图模型中,将被测产品以类视图来描述,类视图包含被测类、交联类、类之间的连接方式和接口数据;交联图模型的属性中包括是否为被测类、类的ID、类名和类的类型,与被测类连接的总线的属性包括总线ID、总线名称和总线类型,类的接口数据包括接口ID、接口名称和接口类型。
所述的被测目标抽取模块的功能包括被测目标测试环境抽取和被测目标测试环境测试需求查询。被测目标测试环境抽取具体是:当测试需求为模块级或者单机级时,从交联图模型中选取所有被测产品,从中抽取被测产品对应的类名以及被测产品的各个接口的接口名称;当测试需求为***级和分***级时,遍历模型中所有被测产品,抽取与被测产品相关联的总线名称,抽取被测产品对应的类名以及被测产品的各个接口的接口名称;根据抽取到的被测产品名称、总线名称和接口名称从测试需求库中筛选出所需的接口测试需求、总线测试需求和环境测试需求。被测目标测试环境测试需求查询是:根据类名和总线名称从测试需求库中查找对应的产品名称,选出所需要的环境测试需求。
所述的测试需求构建模块用于构建静态测试需求和动态测试需求;构建静态测试需求是指将被测目标抽取模块获取的接口测试需求、总线测试需求和环境测试需求输出。构建动态测试需求的过程是:读取状态转换图模型,遍历所有状态迁移路径,对每个状态迁移路径,从起始状态开始,依次找出各个状态的后续状态和迁移条件,对选择的每个状态添加已访问过的标记,列出所有实现转移的状态形成功能测试需求,列出所有迁移条件形成约束测试需求,输出功能测试需求和约束测试需求。
本发明提供了一种航天器测试需求自动生成方法,主要包括如下步骤:
步骤一:针对航天器测试,定义***、分***、单机和模块四个级别的测试需求,对被测航天器按照模块级,单机级,分***级和***级分别绘制基于UML的状态转换图和交联图,抽取状态转换图和交联图对应的XML存储结构,并将状态转换图和交联图转换成XML格式的模型存储。
在XML格式的交联图模型中,将被测产品以类视图来描述,类视图包含被测类、交联类、类之间的连接方式和接口数据;交联图模型的属性中包括是否为被测类、类的ID、类名和类的类型,与被测类连接的总线的属性包括总线ID、总线名称和总线类型,类的接口数据包括接口ID、接口名称和接口类型。
将被测***的逻辑结构转换成由串行,并行,选择和循环等单元构成XML格式的状态转换图模型;将被测***的物理结构转换成由黑盒、接口和总线等单元构成的XML格式的交联图模型。
步骤二:判断当前测试需求级别,若级别为模块级或单机级,则读取交联图模型,遍历交联图模型中所有被测产品,从中抽取被测产品对应的类名和被测产品的各个接口的接口名称;若级别为***级或分***级,则读取交联图模型,遍历模型中所有被测产品,从交联图模型中抽取与被测产品相关联的总线名称,抽取被测产品对应的类名以及被测产品的各个接口的接口名称。
步骤三:根据抽取到的被测产品对应的类名、总线名称和接口名称从已有的测试需求库中筛选出接口测试需求、总线测试需求和测试环境测试需求。
步骤四:读取状态转换图模型,具体是:从状态转换图中的起始状态开始,依次找出各个状态的后续状态和迁移条件,当选择一个后续状态时在该状态上添加已访问过的标记。若一个状态有两个以上的后续状态,则随机选取一个没有被标记已访问过的状态继续,直至遇到终止状态,然后执行步骤五。
步骤五:判断终止状态是否还有未遍历的路径。若存在未遍历的路径,则返回距离终止状态最近的分支状态,执行步骤四;若不存在未遍历的路径,执行步骤六。
步骤六:在功能测试区域列出每一个实现转移的状态,形成功能测试需求,列举完成后执行步骤七。
步骤七:在约束测试区域依次列出约束测试需求,列举完成后执行步骤八。
步骤八:将接口测试需求、总线测试需求、环境测试需求、功能测试需求和约束测试需求合并成为测试需求分析表输出。
相比现有技术,本发明的优点和积极效果在于:
(1)完备性:本发明通过航天器各类型的测试需求字段的完备定义,实现了对航天器测试需求模型中所包含信息完备的抽取。通过自动化的测试需求文档生成方法保障了测试需求文档内容的完备性;
(2)易用性:本发明所给出的测试需求自动生成***及其方法简单易用,具有可视化模块,可在图形界面进行操作,操作简单易用,方法接口调用易用性强,方便与其它模块集成;
(3)通用性:本发明提出的一种航天器测试需求自动生成***及其方法,在实际应用中针对特定领域工程,采用此方法对交联图获取和状态转换图模型读取接口进行适当修改即可满足本领域需求;
(4)实用性:在航天器测试中,由于实际工程的结构特点,大量的静态测试需求具有通用性,而动态测试需求可以由***功能实现进行分析,本发明提出的一种航天器测试需求自动生成***及其方法,可以根据测试需求模型自动生成测试需求,对帮助测试人员对被测***的理解,减少重复工作,方便测试需求编写,提高工作效率具有重大意义,可以满足工程实际需求,具有一定的实用性;
(5)兼容性:本发明在设计时已经考虑到在不同测试层级,并应用在不同型号***下使用,实现不同型号下的测试需求自动抽取;同时可以依照不同的项目,不同的安全等级选择不同的测试需求库文件进行测试需求抽取。
(6)可复用性:本发明在设计时采用了UML来描述被测产品,通过将UML转换成为XML文件进行读取,由于UML和XML都是标准化的建模方法,该测试需求自动获取方法具有可复用性。
(7)可维护性:本发明采取接口类型和被测产品类型对测试需求库中的测试需求进行管理,可以方便测试人员测试需求库。针对不同的型号,将通过测试经验获得的新的测试需求知识添加入测试需求库。
(8)可扩展性:本发明通过定义被测产品ID和类型为后续的测试需求文档管理提供了文档管理依据。
附图说明
图1为本发明的测试需求自动生成***的结构示意图;
图2为本发明的测试需求自动生成方法的整体流程图。
具体实施方法
下文中将参考附图并结合实施来详细说明本发明。
根据航天器测试的相关知识,本发明定义四个测试需求级别,包括模块级,单机级,分***级和***级。定义第一级别为***级测试需求模型,第二级为分***级测试需求模型,第三级为单机级测试需求模型,第四级为模块级测试需求模型。
一种面向航天器的测试需求自动生成***的结构如图1所示,包含测试需求库1,UML模型读取模块2,被测目标抽取模块3和测试需求构建模块4。
测试需求库1是经过积累的各型号被测***、分***、单机和模块所需的测试需求,包含环境测试需求库、总线测试需求库和接口测试需求库。
环境测试需求库是被测***、分***、单机和模块所需环境测试项。总线测试需求库是是被测***和分***所需总线测试项。接口测试需求库是被测***、分***、单机和模块所需接口测试项。测试需求库的数据结构信息包括:被测产品名称,被测产品类型,被测产品测试需求,被测产品的接口名称及接口类型,以及被测产品关联的总线名称及总线类型。本发明采取的接口类型和被测产品类型对测试需求库中的测试需求进行管理,以方便测试人员测试需求库。针对不同的类型,将通过测试经验获得的新的测试需求知识添加入测试需求库
UML模型读取模块2主要功能包括针对被测***交联视图和状态转换视图的UML模型结构抽取,并依据抽取的模型构建存储UML模型。
UML模型结构抽取:对UML交联图和状态转换图做如下定义。
1、UML交联图模型:
交联图模型描述了被测***的物理结构,需要确定:(1)与被测***相关联的其他设备或***;(2)被测***与环境之间的连接方式;(3)被测***与环境之间的交互信息,包括信息的数据类型、数据格式及内容等。
被测产品以类视图进行描述,类视图包括:被测类、交联类、类之间的连接方式和接口数据。当进行模块级测试时,类图中的对象为模块;当进行单机级测试时,类图中的对象为被测单机;当进行分***级测试时,类图中的对象为分***所包括的模块,单机以及连接总线;当进行***级测试时,类图的对象为***所包含的各分***,独立于各分***之外的单机和模块以及将各对象相连接的总线。类的接口数据包括接口ID、接口名称和接口类型。
2、UML状态转换图模型:
在被测***静态结构类图的基础上对***的动态行为进行描述,绘制状态转换图。状态转换图描述了被测***的逻辑结构,一个状态转换图应包括状态,迁移,时间和动作。
状态转换图的元素包括:状态、并发、连接、分支、起点、终点和迁移。其中迁移包括迁移源状态,迁移目标状态,和迁移触发条件(约束)。迁移触发条件包括:时间约束Time,指令约束Instruction。指令约束数据结构包括:接收Receive,发送Send,判断Judge和等待Wait等。
通过对UML模型的定义之后,UML模型向XML转换定义如下:
交联图在XML中用<Interaction:Class>表示,其属性<Interaction:Porperty>包括了是否为被测类<Ineraction:Test>,类的ID<Interaction:ID>,类的名称<Interaction:Name>和类的类型<Interaction:Type>。
交联图模型的XML结构层次如下:
其中,类名<Interaction:Name>描述接口名称的属性,例如1553B总线接口,COM接口,RJ45接口,SMP接口等;类型<Interaction:Type>描述接口的类型,例如1553B总线接口类型应该是Bus,SMP接口的类型应该是Inter等,类型为Bus的接口才具有相应的总线,进行总线测试。
交联图模型中的总线定义为:
状态转换图在XML中用<State:StateChart>表示,包含了状态<State:States>和迁移<State:Transition>,状态转换图的XML结构如下:
其中状态的数据结构定义为:
状态迁移的数据结构定义为:
迁移中的变量的数据结构定义为:
通过以上定义,UML模型读取模块2将UML交联图和状态转换图模型的XML存储结构抽取后,可以将读入的UML模型存入XML文件中。如UML模型中出现未定义的图元,则说明其模型存在错误,应向测试需求编写人员发送报告提示其修改。
被测目标抽取模块3包括被测目标测试环境抽取和被测目标测试环境测试需求查询。当测试需求编写人员选择编写模块级或者单机级测试需求时,从存储的XML文件中选取<Interaction:Bus>和<Ineraction:Test>为True的类进行分析。通过接口的类型Type的赋值从环境测试需求库中抽取对应被测***的测试需求,同时通过总线类型BusType的赋值从接口测试需求库中抽取对应被测***的测试需求。当测试需求编写人员选择编写分***或者***级的测试需求时,则应该选取所有的类进行分析。通过Type的赋值从环境测试需求库中抽取对应被测***的环境测试需求,同时通过BusType分别从接口需求库和总线需求库抽取对应被测***的测试需求。被测目标抽取模块3将被测目标与测试需求库中已有的测试需求建立关联关系,通过对类名和总线名称来搜索需求库,以抽取到完备的测试需求数据。
被测目标测试环境测试需求查询是依据被测产品的类名<Interaction:Name>和总线名称<Interaction:BusName>从测试需求库中查找对应的产品名称,选出所需要的环境测试需求项目,例如高低温测试,电磁兼容(EMC)测试等等。
测试需求构建模块4包含静态测试需求构建和动态测试需求构建。静态测试需求即是通过被测目标抽取时得到的环境测试需求,接口测试需求和总线测试需求的集合。
动态测试需求可以被认为是***功能的测试需求,***状态的每一次迁移就可以视为一种***功能的实现,因此动态测试需求的项目包含:
1、***状态从源状态到目标状态的一次迁移是否能够实现,即功能测试需求;
2、***状态迁移成功时是否遵守迁移条件,即约束测试需求。
构建动态测试需求的过程是:读取状态转换图模型,遍历所有状态迁移路径,对每个状态迁移路径,从起始状态开始,依次找出各个状态的后续状态和迁移条件,对选择的每个状态添加已访问过的标记,列出所有实现转移的状态形成功能测试需求,列出所有迁移条件形成约束测试需求,输出功能测试需求和约束测试需求。
结合本发明提供的的航天器测试需求自动生成***,本发明的一种航天器测试需求自动生成方法,如图2所示,下面对实现步骤进行具体说明。
步骤一:针对航天器测试,定义***、分***、单机和模块四个级别的测试需求,利用UML工具对被测航天器按照模块级,单机级,分***级和***级,分别绘制构建基于UML的状态转换图和交联图。将被测***的逻辑结构转换成由串行,并行,选择和循环等单元构成XML格式的状态转换图模型;将被测***的物理结构转换成由黑盒、接口和总线等单元构成的XML格式的交联图模型。
若状态转换图或交联图无法转换为XML格式,则测试人员对无法转换部分进行修改后再进行转换。
所采用的UML模型,可以通过修改开发过程中已经绘制好的状态转换图和交联图获取,以避免重复性的工作。
步骤二:判断当前测试级别,若级别为模块级或单机级,则读取交联图模型,遍历交联图模型中所有被测产品,从中抽取被测产品对应的类名和被测产品的各个接口的接口名称;若级别为***级或分***级,则读取交联图模型,遍历交联图模型中所有被测产品,从交联图模型中抽取与被测产品相关联的总线名称,抽取被测产品对应的类名和被测产品的各个接口的接口名称。
更具体地,在抽取数据时,对被测产品抽取对应的类的ID、类名和类的类型,对被测产品的各接口抽取接口名称、接口ID以及接口类型。对相关联的被测总线抽取总线名称、总线ID和总线类型。
对于模块级或单机级,被测产品是指交联图模型中所包含的模块或者单机。对于***级或分***级,被测产品是指模型中所包含的分***,以及独立于分***存在的单机和模块。
步骤二具体实现过程是:首先,测试人员标记导入的静态测试需求要分析的是哪一个级别的测试需求,若是模块级或单机级测试需求,则遍历交联图模型中的类,将被测模块或被测单机对应的类添加到测试需求目录下,之后遍历交联图模型中的总线信息,将所有被测模块或被测单机相连的总线添加到测试需求目录下;若是分***级或者***级测试需求,则遍历交联图模型中的类,将被测分***或者被测***中所有的类添加到测试需求目录下,之后遍历交联图模型中的总线信息,将所有被测分***或被测***包含的总线和总线接口添加到测试需求目录下。
步骤三:根据抽取到的被测产品的类名,总线名称和接口名称从已有的测试需求库中筛选出接口测试需求、总线测试需求和环境测试需求。通过步骤三,将已经抽取出来的被测目标与测试需求库中已有的测试需求建立关联关系,并将筛选出来的测试需求记录在缓冲区。
在测试需求库进行数据筛选时,涉及到的数据包括:被测产品对应的类名、类的类型、适用安全等级和测试需求等级。
接口测试需求和总线测试需求中描述了接口测试和总线测试所需要搭建的物理环境测试需求,比如周边的配套电路,配套的测试仪器等等。而环境测试需求描述了测试所需要的环境,例如高温环境下的测试,低温环境下的测试,以及复杂电磁环境下的测试。
若在已有的测试需求库未查询到对应被测产品、总线和/或接口的测试需求,则需要测试人员更新测试需求库,然后再进行选取。
构建静态测试需求的步骤如下:
步骤a、将查询到的环境测试需求输出到测试需求的环境测试部分;
步骤b、将查询到的接口测试需求输出到测试需求的接口测试部分;
步骤c、将查询到的总线测试需求输出到测试需求的总线测试部分。
步骤四:读取状态转换图模型,具体是:状态转换图中的起始状态开始,依次找出各个状态的后续状态和迁移条件,然后在该状态上添加一个flag标记表示已访问过。若一个状态有多个后续状态,则随机选取一个没有被标记过的状态继续,直至遇到终止状态,执行步骤五。
步骤五:判断终止状态是否还有未遍历的路径,若存在未遍历的路径,则返回距离终止状态最近的分支状态,执行步骤四;若不存在未遍历的路径,执行步骤六。
步骤六:在功能测试区域列出每一个实现转移的状态,即为功能测试需求,列举完成后执行步骤七。具体地,将每一个状态迁移的前驱状态和后继状态作为一项功能测试需求记录到缓冲区。
步骤七:将每一个状态迁移条件作为一项约束测试需求记录到缓冲区,在约束测试区域依次列出约束测试需求,列举完成后执行步骤八。
功能测试需求和约束测试需求合并构建动态测试需求,具体步骤四~七可通过如下过程来实现:
步骤1、将状态转换图存储在一个邻接矩阵M中。
步骤2、遍历邻接矩阵,将所有状态迁移路径存在一个链表的集合L中。遍历算法的伪代码如下:
通过上面过程,遍历状态转换图,将所有状态迁移路径存在链表L中。
步骤3、将每一个迁移的源状态和目标状态存入一个数组A[i][j],A[i][j]的数据结构应为(Source,Target),Source表示迁移的源状态,Target表示迁移的目标状态。
步骤4、抽取每一个状态迁移条件,并将其保存。
步骤5、将数组A中的每一个状态迁移记录依次输出到测试需求的功能测试部分。
步骤6、将保存的每一项迁移条件记录依次输出到测试需求的约束测试部分。
步骤八:将接口测试需求、总线测试需求、环境测试需求、功能测试需求和约束测试需求合并成为测试需求分析表,结束本方法。
步骤八中,对提交缓冲区存储的步骤三、步骤六和七得到的测试需求,先去除其中的冗余操作,然后再将得到的测试需求提交到数据库,并更新数据库,并根据用户需求输出测试需求。通过以上步骤,可以实现航天器的测试需求自动获取。

Claims (3)

1.一种航天器测试需求自动生成***,其特征在于,针对航天器测试,定义***、分***、单机和模块四个级别的测试需求,并对被测航天器按照模块级、单机级、分***级和***级分别绘制基于UML的状态转换图和交联图;
所述的航天器测试需求自动生成***包括测试需求库、UML模型读取模块、被测目标抽取模块和测试需求构建模块;
所述的测试需求库是经过积累的各型号被测***、分***、单机和模块所需的测试需求,包含环境测试需求库、总线测试需求库和接口测试需求库;测试需求库的数据结构包括:被测产品名称,被测产品类型,被测产品测试需求,被测产品的接口名称和接口类型,以及被测产品关联的总线名称和总线类型;
所述的UML模型读取模块对基于UML的状态转换图和交联图抽取对应的XML存储结构,并将状态转换图和交联图转换为XML格式的模型存储;在XML格式的交联图模型中,将被测产品以类视图来描述,类视图包含被测类、交联类、类之间的连接方式和接口数据;交联图模型的属性中包括是否为被测类、类的ID、类名和类的类型,与被测类连接的总线的属性包括总线ID、总线名称和总线类型,类的接口数据包括接口ID、接口名称和接口类型;
所述的被测目标抽取模块的功能包括被测目标测试环境抽取和被测目标测试环境测试需求查询;被测目标测试环境抽取具体是:当测试需求为模块级或单机级时,从交联图模型中选取所有被测产品,从中抽取被测产品对应的类名以及被测产品的各个接口的接口名称;当测试需求为***级或分***级时,遍历模型中所有被测产品,抽取与被测产品相关联的总线名称,抽取被测产品对应的类名以及被测产品的各个接口的接口名称;根据抽取到的被测产品对应的类名、总线名称和接口名称从测试需求库中筛选出所需的接口测试需求、总线测试需求和环境测试需求;被测目标测试环境测试需求查询是:根据类名和总线名称从测试需求库中查找对应的产品名称,选出所需要的环境测试需求;
所述的测试需求构建模块用于构建静态测试需求和动态测试需求;构建静态测试需求是指将被测目标抽取模块获取的接口测试需求、总线测试需求和环境测试需求输出;构建动态测试需求的过程是:读取状态转换图模型,遍历所有状态迁移路径,对每个状态迁移路径,从起始状态开始,依次找出各个状态的后续状态和迁移条件,对选择的每个状态添加已访问过的标记,列出所有实现转移的状态形成功能测试需求,列出所有迁移条件形成约束测试需求,输出功能测试需求和约束测试需求。
2.一种面向航天器测试需求自动生成的方法,其特征在于,包括如下步骤:
步骤一:针对航天器测试,定义***、分***、单机和模块四个级别的测试需求,对被测航天器按照模块级、单机级、分***级和***级分别绘制基于UML的状态转换图和交联图,抽取状态转换图和交联图对应的XML存储结构,并将状态转换图和交联图转换成XML格式的模型存储;
在XML格式的交联图模型中,将被测产品以类视图来描述,类视图包含被测类、交联类、类之间的连接方式和接口数据;交联图模型的属性中包括是否为被测类、类的ID、类名和类的类型,与被测类连接的总线的属性包括总线ID、总线名称和总线类型,类的接口数据包括接口ID、接口名称和接口类型;
步骤二:判断当前测试需求级别,若级别为模块级或单机级,则读取交联图模型,遍历交联图模型中所有被测产品,从中抽取被测产品对应的类名和被测产品的各个接口的接口名称;若级别为***级或分***级,则读取交联图模型,遍历交联图模型中所有被测产品,从模型中抽取与被测产品相关联的总线名称,抽取被测产品对应的类名以及被测产品的各个接口的接口名称;
步骤三:根据抽取到的被测产品对应的类名、总线名称和接口名称从测试需求库中筛选出接口测试需求、总线测试需求和环境测试需求;
步骤四:读取状态转换图模型,具体是:从状态转换图中的起始状态开始,依次找出各个状态的后续状态和迁移条件,当选择一个后续状态时在该状态上添加已访问过的标记;若一个状态有两个以上的后续状态,则随机选取一个没有被标记已访问过的状态继续,直至遇到终止状态,然后执行步骤五;
步骤五:判断终止状态是否还有未遍历的路径,若存在未遍历的路径,则返回距离终止状态最近的分支状态,执行步骤四;若不存在未遍历的路径,执行步骤六;
步骤六:在功能测试区域列出每一个实现转移的状态,形成功能测试需求;
步骤七:在约束测试区域依次列出约束测试需求;
步骤八:将接口测试需求、总线测试需求、环境测试需求、功能测试需求和约束测试需求合并成为测试需求分析表输出。
3.根据权利要求2所述的一种面向航天器测试需求自动生成的方法,其特征在于,所述的步骤二的具体实现方法是:首先,测试人员标记导入的静态测试需求要分析的是哪一个级别的测试需求,若是模块级或单机级测试需求,则遍历交联图模型中的类,将被测模块或被测单机对应的类添加到测试需求目录下,之后遍历交联图模型中的总线信息,将所有被测模块或被测单机相连的总线添加到测试需求目录下;若是分***级或者***级测试需求,则遍历交联图模型中的类,将被测分***或者被测***中所有的类添加到测试需求目录下,之后遍历交联图模型中的总线信息,将所有被测分***或被测***包含的总线和总线接口添加到测试需求目录下。
CN201510134653.3A 2015-03-26 2015-03-26 一种航天器测试需求自动生成***及其方法 Expired - Fee Related CN104699613B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510134653.3A CN104699613B (zh) 2015-03-26 2015-03-26 一种航天器测试需求自动生成***及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510134653.3A CN104699613B (zh) 2015-03-26 2015-03-26 一种航天器测试需求自动生成***及其方法

Publications (2)

Publication Number Publication Date
CN104699613A CN104699613A (zh) 2015-06-10
CN104699613B true CN104699613B (zh) 2017-08-04

Family

ID=53346766

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510134653.3A Expired - Fee Related CN104699613B (zh) 2015-03-26 2015-03-26 一种航天器测试需求自动生成***及其方法

Country Status (1)

Country Link
CN (1) CN104699613B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108052450A (zh) * 2017-12-15 2018-05-18 四川汉科计算机信息技术有限公司 航空软件综合测试验证平台
CN108509197B (zh) * 2018-03-09 2020-08-21 北京航空航天大学 一种测试需求视图生成方法及ate测试方法
CN108388231B (zh) * 2018-03-09 2020-05-01 北京航空航天大学 一种机载设备测试需求生成方法及机载设备测试方法
CN108776632B (zh) * 2018-05-23 2021-06-01 中国电子科技集团公司第四十一研究所 面向信号自检流程自动生成方法、装置、设备及可读存储介质
CN109120330B (zh) * 2018-08-07 2021-05-18 北京空间技术研制试验中心 异地分布的航天器的***间远程联试方法
CN109992554B (zh) * 2019-03-12 2020-11-06 中国科学院国家空间科学中心 一种基于通用的Schema结构描述的1553B总线通信协议的实现方法
CN113238952B (zh) * 2021-05-25 2022-07-12 中国科学院软件研究所 基于应用程序状态转换图的智能辅助引导测试方法及装置
CN113589050A (zh) * 2021-08-02 2021-11-02 西安兵标检测有限责任公司 电容器测试***及测试方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101025686A (zh) * 2007-03-22 2007-08-29 中兴通讯股份有限公司 一种自动化测试***及测试脚本的生成和运行方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8365147B2 (en) * 2008-02-27 2013-01-29 Accenture Global Services Limited Test script transformation architecture

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101025686A (zh) * 2007-03-22 2007-08-29 中兴通讯股份有限公司 一种自动化测试***及测试脚本的生成和运行方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
航天器测试需求描述及其自动生成;高世伟等;《北京航空航天大学学报,http://www.cnki.net/kcms/detail/11.2625.V.20150317.1635.004.html》;20150317;第1-12页 *

Also Published As

Publication number Publication date
CN104699613A (zh) 2015-06-10

Similar Documents

Publication Publication Date Title
CN104699613B (zh) 一种航天器测试需求自动生成***及其方法
CN110287097A (zh) 批量测试方法、装置及计算机可读存储介质
CN102341781B (zh) 软件测试台生成
CN104866426A (zh) 软件测试综合控制方法及***
CN103473171A (zh) 一种基于函数调用路径的覆盖率动态跟踪方法及装置
CN109739766A (zh) 一种快速搭建fpga数字仿真模型的***及方法
JP2012256323A (ja) 解析データ用の直感的なコンテクストを作成するためのシステム及び方法
CN105808428A (zh) 一种对分布式文件***进行统一性能测试的方法
CN103617117B (zh) 一种基于航空嵌入式软件测试知识库***
CN101847169A (zh) 集成电路设计的原理图的交互式简化
CN107741903A (zh) 应用程序兼容性测试方法、装置、计算机设备和存储介质
US8965797B2 (en) Explosions of bill-of-materials lists
CN202339542U (zh) 一种软件产品测试***
CN103955429B (zh) 确定回归测试范围的方法及装置
CN104899141B (zh) 一种面向网络应用***的测试用例选择与扩充方法
CN101901265A (zh) 一种虚拟试验数据对象化管理***
CN103744647A (zh) 一种基于工作流GPD的Java工作流开发***及其方法
CN101866315A (zh) 软件开发工具的测试方法及***
CN106126416B (zh) 一种基于流程编排的服务组合路径推导方法
CN104516813A (zh) 网络页面的测试节点的选取方法和装置
CN114328278B (zh) 分布式仿真测试方法、***、可读存储介质及计算机设备
CN115113927A (zh) 寄存器模型处理方法、装置、计算机设备和存储介质
US20150088483A1 (en) Simulated component connector definition and connection process
CN103425795A (zh) 一种基于云计算的雷达数据分析方法
CN108829903B (zh) 判定fpga冗余设计的代码与综合后电路一致性的方法和***

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210714

Address after: 100191 1408-024, 14th floor, shining building, 35 Xueyuan Road, Haidian District, Beijing

Patentee after: Beijing precision digital intelligent technology Co.,Ltd.

Address before: 100191 No. 37, Haidian District, Beijing, Xueyuan Road

Patentee before: BEIHANG University

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170804

Termination date: 20210326