论文部分内容阅读
随着机载设备功能的高度集成化,机载设备上的嵌入式软件设计复杂程度成倍增加。软件质量成为决定产品质量优劣的关键条件之一。为提高嵌入式软件的质量,可靠有效的软件系统测试变得越来越重要。目前,机载软件系统测试通常是基于被测设备,仿真测试设备和测试程序进行。在测试中常遇到相同硬件组成,但软件根据型号要求而不同的产品,在测试时仍需要两套独立测试设备来完成被测设备的软件系统测试。为了能节省测试设备的成本,有利于软件的系统测试,本论文设计了一个通用的嵌入式全系统仿真测试环境,来实现软件系统测试。在本论文中利用QEMU虚拟机技术实现被测软件运行平台的仿真(即被测设备硬件的仿真),并实现了在仿真的硬件中能正常运行被测软件的可执行二进制代码。这样便实现了被测设备的全系统仿真。再通过被测设备接口的虚拟实现,以及测试用例的设计运行,从而实现嵌入式全系统仿真测试环境的设计。在该环境中可以不依赖硬件产品和不对目标机二进制代码做任何修改,就可以进行被测产品的软件系统测试。将QEMU虚拟机引入本论文是利用其跨平台运行的优势,它可以在x86的机器上实现PPC等CPU的仿真模拟。这样可以在该环境上实现不同CPU的全系统仿真,从而达到该环境的通用性设计的目标。本论文对系统进行了标准化与模块化设计,将测试系统分为被测目标机全系统仿真部分,接口转换和通信代理部分和测试用例部分三个部分。被测目标机全系统仿真部分为本测试平台的核心部分。主要的功能是要实现被测设备的全系统仿真,并且被测设备的可执行软件在不经过修改的条件下可直接运行。仿真代理部分是出于通用化而设计的。它将负责实现测试程序与被测系统之间的接口连接转换。可以根据被测设备的接口状况来设置与测试程序的连接。测试用例部分是根据实际软件需求规格说明的要求,进行测试用例的设计。它将实现测试用例的数据库,对于相同的接口测试,可以使用相同的测试程序来实现。测试人员只需要考虑被测数据的长度和时间等技术细节。作者在该项目中主要负责完成了该仿真测试环境的总体设计和被测设备硬件仿真部分以及仿真实现后的测试验证工作。负责用QEMU虚拟机技术实现对被测设备的全系统仿真,确保被测软件在该环境中能正常运行。被测设备的全系统仿真的实现可以使得具备相同硬件接口的被测设备的软件系统测试都可以在相同的测试环境中测试运行,只要将被测设备的可执行软件加载到全系统仿真系统中运行就可以了。并对于仿真系统,设计了小型的测试软件,测试结果表明,所设计实现的被测设备全仿真系统可以实现被测设备软件的正常运行,并验证了实现的被测设备全系统仿真系统可以稳定可靠的运行,满足了被测设备软件的运行条件。本文将着重介绍本测试系统中被测设备硬件仿真部分的设计与实现,以及针对该部分进行测试的测试结果。