【技术实现步骤摘要】
一种基于模型的航天器控制器软件测试用例自动生成方法
[0001]本专利技术属于软件测试
,是针对航天器控制器软件的功能性测试的一种测试用例自动生成方法。
技术介绍
[0002]软件测试技术以检验软件是否满足需求为目标,并伴随着软件和硬件的发展而逐步发展。软件测试通过执行测试用例,在软件正式投入使用之前发现软件的故障并修复缺陷,是软件开发中不可缺少的环节。
[0003]针对安全关键领域的软件应该更加注重软件的测试,比如航天器上的控制器软件,控制器软件是否正确地运行直接决定航天器能否完成其主体任务、甚至可能关系到航天员的生命安全。这种软件在使用前必须进行充分地测试以尽可能减小故障发生的可能。
[0004]在航天器的软件测试领域,已经有很多相关的工作。这些工作较多的关注软件代码的检查,即为白盒测试。这种白盒测试对于软件测试来说时必不可少的环节,但是不能直接检查航天器控制器软件是否正确地按照预期的功能运行。
[0005]随着我国空间飞行器设计技术的不断演进,空间飞行器已经从硬件主导演进为以数据为基础的软 ...
【技术保护点】
【技术特征摘要】 【专利技术属性】
1.一种基于模型的航天器控制器软件测试用例自动生成方法,其特征在于:该方法包括以下步骤:步骤1)、空间飞行器测试需求形式化建模,在统一规定的规则下,使用UML状态图对测试需求中航天器的状态以及其转换进行建模,即可完成状态图的构建,得到无二义性的标准模型;步骤2)、对上述标准模型的预处理,将状态图中包含的测试信息,转换成一个有向图进行存储;其中,所述的复合状态图中包含层次信息,所以需要根据航天器自身的特点对所述复合状态图进行展平;步骤3)、通过步骤2)中得到的有向图,可以从中得到不同的覆盖准则下的测试路径——有向图中每一条从起始结点到终止结点的由结点和边组成的路径,都可以代表航天器软件测试的一条测试路径;步骤4)、对步骤3)得到的每一条测试路径划分系统的输入输出,并对该路径上的输入空间进行等价类划分;该步骤将在任意一条测试路径上生成不同的逻辑序列,这些逻辑序列在逻辑上对该任意一条测试路径的转移条件进行充分的覆盖;步骤5)、对步骤4)得到的每一个等价类,进行赋值操作,得到该逻辑序列上的具体的测试用例的序列,其中测试用例包含测试输入以及软件预期输出。2.根据权利要求1所述的一种基于模型的航天器控制器软件测试用例自动生成方法,其特征在于:步骤2)所述的对复合状态图进行展平,具体过程如下:对于某复合状态s
c
,有以下的符号规定:复合状态内部的起始状态为s
c
‑
I
,含有n个子状态s
ci
(1≤i≤n),其中起始状态所连接的子状态为s
c1
;所述展平的原则是:a)一个进入复合状态s
c
的转移t,其源状态为s1,目标状态可能是复合状态s
c
或者其子状态s
ci
;如果所述转移t的目标状态是复合状态s
c
,则在展平后将产生由其源状态s1到起始状态所连接的子状态s
c1
的一条新转移t
′
;如果所述转移t的目标状态是子状态s
ci
,则在展平后将产生由其源状态s1到子状态s
ci
的一条新转移t
″
技术研发人员:殷蓓蓓,田野,张雷,郑征,孙波,李志栋,
申请(专利权)人:北京空间飞行器总体设计部,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。