场景法在导引头软件测试中的应用

2018-02-28 09:38付永乐赵星汉高湘飞
电子技术与软件工程 2018年23期
关键词:导引头测试用例设计

付永乐 赵星汉 高湘飞

摘要

将场景法运用于导引头软件测试中,通过对搜索、跟踪状态切换以及偏差量解算功能、激光编码识别功能进行场景划分,通过对用例个数进行优化,设计出测试用例。结果表明,使用该方法设计的用例保证了测试的充分性和有效性。验证的基于场景法的测试用例设计方法在复杂时序系统测试中得以推广和应用,满足了软件充分性要求和覆盖率的要求,提高了系统测试的效率和效果,为保证软件产品质量发挥了作用。

【关键词】黑盒测试技术 测试用例 设计 场景法 导引头

1 引言

导引头软件配置在激光末端修正迫弹导引头上,是精确制导导弹系统的重要组件,用来完成对目标的自主搜索和跟踪,并给出制导所需要的控制信号。导引头控制软件作为导引头的核心,其性能和可靠性对导引头的制导精度和稳定性至关重要。为了保证导引头软件的可靠性,需要对其进行充分性测试。

导引头是典型的反应式系统,其进程通常都是无终止地、不间断地响应环境的激励。反应性使得软件的输入空间更大,且更复杂,因而测试难度也更大。在对导引头软件概述的基础上,讲述了利用场景法设计测试用例,对用例数量进行优化,并分析测试方法的有效性和测试的充分性。通过采用这种测试设计方法,使导引头软件测试的思路更清晰,测试的充分性也得以保证。

2 导引头软件概述

导引头软件是精确制导导弹系统的重要组件,是典型的嵌入式实时软件,具有复杂的外部信息交联关系,必须具备快速响应外部激励的能力,根据系统当前状态和外部输入处理产生新的系统状态和输出控制信息。

导引头软件的基本工作过程是,在激光目标指示器发射激光束到目标上后,目标反射的激光信号经导引头光学天线成像于光电探测器,经光电转换和放大后形成回波信号和激光触发信号,回波信号通过A/D转换电路由模拟信号变为数字信号。导引头软件根据激光编码数据对激光触发信号进行激光编码识别,激光编码确认后由回波信号解算出目標方位偏差角、高低偏差角和回波能量,根据回波能量调整接收电路增益,将方位、高低偏差角转换为偏差量。导引头软件能够与计算机进行双向通信,接收并反馈激光编码信息,发送偏差量信息。

3 测试需求分析

导引头软件主要功能包括偏差量解算功能、激光编码识别功能以及搜索状态和跟踪状态两种状态。

(1)偏差量解算功能,该功能在跟踪状态下进行,激光编码确认进入跟踪状态后,如果激光触发信号出现且周期在有效范围内,导引头软件从刀D转换电路中读取回波信号的数字量,根据这信号数字量解算出目标的方位偏差角、高低偏差角及回波能量。激光触发信号周期有效范围为激光编码信息对应周期前后一定时间以内。如果激光触发信号周期在有效范围内,则将CPU定时器中的值复位,重新进行定时;如果激光触发信号周期不在有效范围,则不复位CPU定时器的值。激光触发信号周期不在有效范围,应判断激光触发信号周期是否大于激光编码信息对应周期的倍数,如果不大于则退出偏差量解算功能,等待下个激光触发信号的到来;如果大于,则退出跟踪状态进入搜索状态,需重新进行激光编码识别;如果CPU定时器中的值超过一定时间则退出跟踪状态进入搜索状态,需重新进行激光编码识别。

(2)激光编码识别功能,如果连续两个激光触发信号周期在有效范围内则判定激光触发信号有效,激光编码得到确认;如果定时器的值超过一定时间,即一定时间内没有激光触发信号出现,将所有的激光编码识别状态清零,等待下一个激光触发信号出现时重新进行激光编码识别。

(3)搜索状态,导引头上电完成初始化进入搜索状态;在跟踪状态时连续多个激光编码周期激光触发信号均无效,进入搜索状态;在跟踪状态时一定时间内没有激光触发信号出现,进入搜索状态。

(4)跟踪状态,如果连续多个激光触发信号周期在有效范围内则判定激光触发信号有效,激光编码得到确认,进入跟踪状态。

4 基于场景的用例设计

在软件测试中,测试人员依据需求规格说明,编制测试需求规格说明,并依据测试需求规格说明编写测试用例。在编制测试需求规格说明的过程中,我们了解了执行流程和任务目标,为测试用例设计奠定基础。为达到系统测试充分性的要求,应综合应用多种测试方法,如等价类划分法、边界值分析法、猜错法、因果图法、场景法等。本文主要针对场景法这一测试方法,对导引头软件的功能进行测试。

4.1 场景法

场景法,是通过设计场景来描述软件,首先由Rational公司提出,是黑盒测试技术中重要测试方法之一。这种测试方法,是从软件设计的思想中引入到软件测试的思想中,比较生动的描绘了事件触发时的场景,有利于测试设计者对复杂的时序软件进行测试用例的设计,更加容易理解和执行。

目前,大多数软件都是事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。

用例场景用来描述流经用例的路径,从用例开始到结束遍历这条路径上所有基本流和备选流。

基本流为经过用例的最简单的路径。一个备选流可能从基本流开始,在某一特定条件下执行,然后重新加入基本流中,也可以源于另一个备选流,或者终止用例而不再重新加入到某一流。

测试用例的编写是依据每个场景,并加入特定的条件来实现的。

4.2 场景法用例设计

根据测试需求,进行导引头工作流程的梳理,以导引头软件为例,实现场景法在软件测试中的应用。结合偏差量解算功能、激光编码识别功能以及搜索状态和跟踪状态两种状态进行工作流程分析,得到工作流程图如图1所示。

针对上述工作流程图,标记各状态如下,导引头上电初始化用I表示;搜索状态用2表示;跟踪状态用3表示;偏差量解算用4表示;激光编码识别成功用5表示;超过一定时间用6表示;连续多个激光编码无效用7表示;激光触发信号出现且周期在有效范围内用8表示;激光触发信号出现且周期不在有效范围内用9表示;不大于激光编码信息对于周期的倍数用10表示;大于激光编码信息对于周期的倍数用11表示;绘制出用例有向图,如图2所示。

利用场景法原理分析,得到软件测试用例设计相关的基本流和备选流。

(1)基本流(13):②⑤③,在搜索状态下,激光编码识别成功后,进入跟踪状态;

(2)备选流I(B 1):⑥,CPU定时器中的值超过一定时间,退出跟踪状态,进入搜索状态;

(3)备选流2(132):⑦,连续多个激光编码无效,退出跟踪状态,进入搜索状态;

(4)备选流3(B3)①,导引头上电初始化,进入搜索状态;

(5)备选流4(134):⑧④,在跟踪状态下,激光触发信号出现且周期在有效范围内,执行偏差量解算;

(6)备选流5(135):⑨⑩,在跟踪状态下,激光触发信号出现且周期不在有效范围内,同时未大于激光编码信息对于周期的倍数,继续处于跟踪状态;

(7)備选流6(136):(RID,在跟踪状态下,激光触发信号出现且周期不在有效范围内,同时大于激光编码信息对于周期的倍数,退出跟踪状态,进入搜索状态;

根据上述基本流和备选流信息,确定用例场景信息如表1所示。

测试用例构成了设计和制定测试过程的基础,文中提出的基于场景的优化方法有效避免在确定测试用例过程中产生的多余或等效的测试用例,减少了测试工作量和测试用例的重复生成。

5 结论

通过场景法对导引头软件测试后,保证了测试用例的充分性,在进行数据设计时,采用等价类划分的方法,对其功能进行删选,为保证测试充分,在场景法梳理工作流程之后,进行等价类划分法、错误猜测法、边界值分析法进行补充测试。从上述可知,要保证软件的测试充分,不能仅仅靠单一的黑盒测试技术就能完成测试。场景法适合与复杂时序软件测试的测试依据条件的梳理,实现软件测试的充分性。该方法对软件测试工作具有一定的借鉴意义。

参考文献

[1]赵善彪,张天孝,李晓钟.红外导引头综述[J].飞航导弹,2006(08):42-45.

[2]于劲松,郝王松,万九卿等.基于直接信号注入的导引头仿真技术[J].兵工学报,2006,27(05):928-93.

[3]韩峰岩,王听.机载计算机软件的测试[J].航空计算技术,2004,34(03):66-69.

[4]钟任华,周茂树.飞航导弹红外导引头[M].北京:宇航出版社,1995

[5]杨悦,秦湘河,杨永安等.航天测控软件测试用例标准及应用研究[J].无线电工程,2013,43(09):41-44.

[6]软件测评师教程[M],柳纯录主编,清华大学出版社,2005.

猜你喜欢
导引头测试用例设计
基于SmartUnit的安全通信系统单元测试用例自动生成
基于混合遗传算法的回归测试用例集最小化研究
瞒天过海——仿生设计萌到家
设计秀
有种设计叫而专
全极化雷达导引头抗干扰技术
半捷联雷达导引头视线角速度提取
一种捷联式图像导引头的解耦算法
毫米波导引头预定回路改进单神经元控制
基于依赖结构的测试用例优先级技术