APP下载

全数字仿真测试环境在航天软件测试中的应用研究

2021-01-15胡经民郭璞武宏伟孙靖

科技创新导报 2021年23期
关键词:测试环境体系结构软件测试

胡经民 郭璞 武宏伟 孙靖

摘要:为了高效地实现对航天软件的测试,保证所开发软件的质量。本文研究了基于全数字仿真测试环境在航天软件测试中的应用,详细介绍了硬件仿真测试环境、全数字仿真测试环境的基本概念,并从全数字仿真测试环境的体系结构,软件测试流程等方面阐述了软件测试的原理及实现方法。最后,通过实际的应用分析并总结了全数字仿真测试环境下航天软件测试的优势。

关键词: 全数字仿真硬件测试环境航天软件测试应用研究

Abstract: In order to test aerospace software efficiently, it is necessary to ensure the quality of the developed software. This paper investigates the application of an all-digital simulation-based test environment in aerospace software testing. The basic concepts of hardware simulation test environment and full digital simulation test environment are introduced in detail. And the principle and implementation of software testing are described from the aspects of architecture of full digital simulation testing environment and software testing process. Finally, combined with actual applications, the advantages of aerospace software testing under the all-digital simulation test environment are analyzed and summarized.

Key Words: All-digital simulation; Hardware test environment; Aerospace software testing; Application research

隨着科学技术的不断发展,航天系统对系统集成化、智能化的需求愈发迫切,在硬件逐渐完善的同时,软件质量直接关系到整个系统的稳定性、容错性、可靠性等。而软件测试是保障软件质量最基本也是最重要的途径。目前,在航天类的软件中,可以粗略地将测试环境分为硬件仿真测试环境、全数字仿真测试环境两大类。

图1为通用的硬件仿真测试环境示意图。由图可知该测试环境主要由四大部分硬件组成。其中,弹载计算机部分主要是用于完成飞行控制软件的相关操作;仿真测试平台主要是用于对输入信号的测试并将其结果显示到界面上,同时还用于实现其他硬件之间的数据交换。遥测和地面计算机的主要作用是对航天设备进行实时的监测,并结合任务需求及实际状态向弹载计算机上传所需的运行程序,同时接收其发回的反馈信息及遥测数据。仿真计算机的主要任务是结合所运行的航天设备的动态方程,获得该设备在实际的运行过程中的状态估计,并将其数据传输给弹载计算机。然后,弹载计算机根据目标当前的位置及设定的任务需求进行数据处理并将控制量输出给仿真计算机。最后,通过仿真计算机来执行模型控制。

通常情况下,对于与不同的航天型号相对应的硬件仿真测试环境不尽相同,因此无法实现测试环境的资源共享。由于不同设备的内部硬件结构不同,导致当测试环境出现故障、或后期需要维护更新时,将耗费极大的时间、人力及物力,从而造成了极为严重的资源浪费。鉴于该仿真测试环境存在的一系列缺点,基于航天软件测试的全数字仿真测试环境应用而生。因此,下文将对该测试环境进行详细的研究。

1全数字仿真测试环境简介及模型

1.1 全数字仿真测试环境简介

图2全数字仿真测试环境设计示意图。该测试环境同样由4个部分组成,其主要作用是所需测试的航天软件构建一个模拟的测试环境[1],从而无需通过如图1所示的硬件设备来获取测试数据,只需通过仿真测试环境来产生所需的模拟数据。因此全数字仿真测试环境相较于硬件测试环境更加的灵活,经济。

在上图中,对于模拟输入部分,通常以脚本为主要的输入方式。这样的好处在于可以根据实际情况设计不同的故障脚本,从而实现对航天软件更加全面的测试。图2中间的两部分的主要作用是仿真、模拟实现硬件部分的工作过程。而最后的结果记录主要是用于对结果的分析,便于对所进行测试的软件进行相应修正,与维护。

1.2 全数字仿真测试环境模型

在实际的场景中,嵌入式的航天软件与外部设备进行数据交互主要是通过数据总线来完成的。即与软件相连的外部设备首先将所需处理的数据通过总线发送给软件,软件利用内部的算法完成相应的操作后,再通过总线将其结果输出,从而完成不同系统、设备之间的交互与通信[2]。

利用模拟数据总线的方法,可以将全数字仿真测试环境中的航天软件和其他LRU(Lille Replaceable Unit)进行互联,并实现数据传输,其功能和真实的总线完全相同。同时,还可以根据进程调度来同步不同模块的数据[3]。图3为全数字仿真测试环境模型示意图。

此外,为了在全数字仿真测试环境中对所需的航天软件进行测试,还需调用相应的测试命令或操作应用程序接口来来仿真外部设备的数据输入。需要注意的是,该输入及通过测试后输出的全部过程都是利用模拟总线结构来进行调用和数据交互的。

2 全数字仿真测试环境的体系结构及软件测试流程

2.1 全数字仿真测试环境的体系结构

为了保证仿真测试环境的維护性、扩展性,降低后期使用成本。全数字仿真测试环境采用了分层的体系结构[4],如图4所示。

其中,用户界面的主要任务完成人机交互的功能。一方面是将所需的测试命令发送到相应的测试环境中;另一方面是将测试的结果反馈给操作人员或用于,便于进一步分析与操作。激励系统、测试代理的主要作用是完成用户界面与虚拟机之间的数据交互,从而实现对虚拟机的控制,并完成静态、动态的测试功能。虚拟机主要用于运行被测软件[5-6]。

分层的体系结构的基本思想是将总的测试任务进行分解,并将分解后的每部分任务单独的放在一个抽象的层中,该体系结构的优势主要体现在以下几点。

(1)层的重用。当某一独立的抽象层具有较为标准或通用化的接口时,则该层可以在不同的航天软件测试中被重复使用,从而最大程度地降低了开发成本。

(2)标准化支持。抽象层准确划分,能够有效的促进标准、规范、统一化的任务接口开发。

(3)局部依赖性。独立层之间的准确划分,可以明确各层之间的任务及关联性,减少了由于某一部分的修改对整个环境的影响。

(4)可替换性。不同测试软件相同的需求仿真测试环境可以实现单个独立层的轻松替换。

2.2全数字仿真测试环境的软件测试流程

在全数字仿真环境下软件测试步骤如下:

(1)仿真测试环境的初始化。将待测的航天软件编译后加载到当前的测试环境中;

(2)通过静态测试工具对所测试的航天软件执行静态分析,并生成相关的检测数据;

(3)通过动态测试工具对所测试的航天软件执行动态分析,并进行相应的调试;

(4)验证测试环境的自动化,即利用仿真测试环境来产生诸如中断等事件,保证被测的航天软件可以按照“闭环”的方式运行;

(5)对输出的结果进行详细分析,并生成相应的结果报告。

4 结语

测试是保证和提高航天软件的质量及其重要的途径,本文研究了全数字仿真测试环境在航天软件测试中的应用,详细阐述了全数字仿真测试环境及其模型,构建了全数字仿真测试环境的体系结构,并总结了软件测试的基本流程,最后通过实际的应用并结合硬件仿真测试环境分析并总结了全数字仿真测试环境的有效性。对航天软件的测试具有一定的参考价值。

参考文献

[1]贾志远.嵌入式软件安全检测的关键技术研究[D].长春:长春工业大学,2020.

[2]滕俊元,徐忠宾,高猛.基于全数字仿真的虚拟软件测试环境[J].机电一体化,2017(9):23-27.

[3] Gao F, Deng F, Yan Y, et al. Full Digital Simulation Testing of Networked Embedded Software[C]//2018 IEEE International Conference on Software Quality, Reliability and Security Companion (QRS-C).IEEE,2018:45-50.

[4]李毅,杨丰辉,蔡栋材,等.飞行管理系统仿真测试环境研究与应用[J].航空计算技术,航空计算技术,2020,50(3):66-70.

[5] 刘春龙,王洋,申彪.多处理器嵌入式软件的全数字仿真测试平台开发技术[J].航天控制,2018,36(4):73-77.

[6]曲明成,崔乃刚,吴翔虎,等.嵌入式软件虚拟化测试技术标准框架研究[J].哈尔滨工业大学学报,2017,49(5):49-55,121.

猜你喜欢

测试环境体系结构软件测试
基于OBE的软件测试课程教学改革探索
服务导向下的网格软件测试环境研究
雷达航迹处理测试环境构建方法研究
网络设备自动化测试设计与实现
EXCEL和VBA实现软件测试记录管理
关于软件测试技术应用与发展趋势研究
基于粒计算的武器装备体系结构超网络模型
软件测试工程化模型及应用研究
作战体系结构稳定性突变分析
基于DODAF的装备体系结构设计