随着嵌入式系统的广泛应用,人们对嵌入式系统软件的质量提出了更高的要求,而作为保证软件质量最有效手段的测试技术,也越来越受到关注。目前嵌入式软件的开发语言以C等高级语言为主,因此,对这些高级语言的测试显得尤为重要。
目前实用的嵌入式系统测试平台卞要由国外厂商开发,比较具有代表性的测试平台有Telelogic公司的Logi-scope .Metrowerk公司的CodeTest, Windriver公司的CoverageScope和IPL公司的Cantata等。国外厂商的嵌入式系统测试平台功能较强,技术较先进,但一套测试系统价格往往高达数万到十多万美元,极大增加了嵌入式系统的开发成木,无法得到普遍的应用,影响了国内嵌入式系统的开发质量。
国内的嵌入式系统测试平台有基于目标开发的测试系统。电子科技大学研究了基于目标的嵌入式软件测试系统,实现了对汇编语言进行自动插装,并实现基木的覆盖测试功能。但由于嵌入式软件需要基于硬件电路进行调试,当软件程序写入硬件电路后,如果电路工作不正常甚至无法工作,则难以断定问题所在,这就限制了嵌入式软件测试必须按照先硬件后软件的模式进行。
木系统实现了基于仿真的嵌入式C语言软件覆盖测试分析。通过有效的词法语法分析、自动插装、测试用例的生成和加入、动态仿真运行及覆盖报告分析等模块对源代码进行覆盖分析,缩短了嵌入式系统开发周期,有效地解决了传统手工测试程序运行效率低、繁琐等问题,保证了嵌入式软件系统高效稳定的运行。
1嵌入式软件测试系统框图
嵌入式软件测试系统的结构框图如图1所示。它卞要由5部分组成:程序的预处理过程(包括词法语法分析)程序的自动插装过程、测试用例的加入、动态仿真运行及覆盖报告分析。
被测试程序首先经过预处理。由于源程序中存在宏定义次件包含和条件编译等预处理命令,因此在进行词法分析前必须进行预处理,将宏展开,以利于查找变量词法分析是将预处理阶段产生的中间代码分解成单独的词的表示,语法分析是将输入字符串识别为单词符号流,卞要用来确定插装的位置,在一些关键的字段和函数处插
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉