
嵌入式应用在我国国防工业中占有相当重要的地位,而嵌入式软件一直没有好的测试手段满足国内对它们进行各种测试的需求。这是因为传统的软件覆盖测试一般都是借助于插桩的方法实现的,插桩经常使得被测软件的代码膨胀达到30%。而嵌入式应用的最大特点就是资源紧张、代码紧凑以及软件与硬件关系密切等,如果对嵌入式软件采用插桩的方法进行覆盖测试会带来各种各样的问题,因此,这种方法在很多情况下是不合适或不可行的。国内外有采用总线监听或对代码单元进行读标识等方法来对嵌入式软件进行测试,这对早期的8位、16位简单的、没有预取指令功能的CPU进行覆盖测试是可以的,但对功能强大的32位以上的CPU进行覆盖测试还是存在着各种问题无法解决。另外,在设计初期硬件没有出来或硬件得不到的情况下,嵌入式软件也是无法测试的。
北京奥吉通公司根据国内用户急需对嵌入式软件进行测试的需求,积极与国外公司和国内高校合作,借鉴他们先进的软件测试产品与技术,以及高水平的研发能力,在前期自主研制能够对Intel
8031/8051、8096/80196、80x86, DSP TMS320 C3X/C4X/C5X及Mil-1750进行单元测试、集成测试、系统测试以及覆盖测试和功能测试的软件分析与测试系统CRESTS/ATAT软件(即科锐时汇编测试分析工具)的基础上,又成功研制出能够对C语言和Ada语言进行全数字仿真测试的高级语言测试工具或测试平台CRESTS/TESS。
自CRESTS/ATAT和CRESTS/TESS推出以来,已在军工、国防(如航空、航天等领域)多处嵌入式软件的调试及测试中得到了很好的应用,并有效地保证了嵌入式软件的质量。
目前,CRESTS/TESS通过CPU机器指令的解释、CPU环境的模拟以及外部事件的仿真等手段来构建嵌入式软件的运行环境,在该环境下针对DSP
TMS320 C3X/C4X和Mil-1750等CPU实现了C和Ada程序的语言级运行与源程序级调试,软件的静态质量度量与质量分析,软件的动态性能测量与性能统计,软件的单元测试与集成测试,软件的“白盒”测试与“黑盒”测试,外部事件的激励仿真与测试用例的编程引入,以及质量、性能和测试报告生成等。

因CRESTS/ATAT和CRESTS/TESS是我们自主研制的,因此我们很高兴、也很容易地按照用户的要求为用户快速地定制、修改和增加其软件功能,并且能够很好地进行售后服务。
总之,我们会根据广大用户的希望以及市场和应用的需求,进一步完善现有软件功能,丰富CPU种类,研究软件与硬件的协同验证等。