由于嵌入式系统的独特性,导致其中运行的嵌入式软件测试需要专用的测试工具,当今应用于嵌入式软件测试的主流测试方法,按照其对嵌入式软件测试技术和方法上的不同,主要可以分为嵌入式软件静态分析法、嵌入式软件动态测试法和嵌入式软件综合测试法三类。 嵌入式软件静态分析法 嵌入式软件静态分析法主要是能够在软件开发的早期就发现软件中的缺陷,这对于对软件的可靠性和安全性有着较高要求的嵌入式软件十分重要。使用静态分析发对嵌入式软件进行测试时,具体的功能主要体现在三个方面: (1)代码质量分析:采用静态的方法对软件质量进行分析与评估。 (2)代码规范性检测:这种方法目前流行于很多知名企业,制定或执行一定的编码规范,在软件开发过程中,可以避免错误陷阱和代码误解。 (3)代码缺陷分析:对被测代码进行静态扫描,查出可能存在的运行出现时错误的代码段,这种分析可以检测出动态测试状态下难以捕捉到的错误。 嵌入式软件动态测试法 由于嵌入式系统的复杂性,其嵌入式软件一般都有特殊性,因此对嵌入式软件进行动态测试较为困难,主要介绍以下几种嵌入式软件动态测试方法: (1)嵌入式软件“白盒”测试:嵌入式软件白盒测试又称为结构测试,是指在了解被测装置内部结构和软件实现细节的基础上进行的软件测试,根据测试需要可以打开被测装置,重点关注软件内部的实现细节。 (2)嵌入式软件“黑盒”测试:嵌入式软件黑盒测试又被称为功能测试,是指再不打开被测装置、不考虑其内部逻辑结构的情况下,通过功能测试项目来检测每个功能是否符合测试要求。 (3)嵌入式软件“灰盒”测试:嵌入式软件灰盒测试是介于白盒测试与黑盒测试之间的测试方法,该测试方法是建立在可以打开被测装置内部结构但不关注软件实现细节的基础上进行的关键信息点测试,这种测试方法只是通过一些表征性的现象、事件、标志来判读内部的运行状态,而不像白盒测试中那么详细。 嵌入式软件综合测试法 在嵌入式软件可靠性测试工程中,由于嵌入式系统的复杂性,嵌入式软件发生的错误通常呈现多样化的特点,导致单一的静态分析或者动态测试都不能够完全满足测试工程的实际需要,因此很多嵌入式软件的可靠性评价都会采用静态分析与动态测试相结合的综合性测试法。 |
|