嵌入式软件的覆盖测试(3)

发表于:2011-10-21来源:未知作者:领测软件测试网采编点击数: 标签:
经过2个多月的时间,我们对DeltaCORE 1.1版本79个文件共计115个函数进行了覆盖测试,覆盖率已经达到了70.55%。编写测试用例89个,主要的60个API函数均已获得

  经过2个多月的时间,我们对DeltaCORE 1.1版本79个文件共计115个函数进行了覆盖测试,覆盖率已经达到了70.55%。编写测试用例89个,主要的60个API函数均已获得较高的覆盖,覆盖率达100%的约占51.3%。

  6 小结

  我们借助Logiscope工具对嵌入式实时操作系统DeltaCORE进行了覆盖测试,达到了较好的覆盖率;发现并处理了一些缺陷,提高了软件的质量和可靠性,但同时也存在不足之处:

  ①测试应好好规划,包括测试顺序的选择、测试案例的设计、测试文档的管理等等。

  ②由于该测试手段依赖于操作系统的有关机制,而被测对象又是操作系统本身,因此与这些机制有关的部分代码未被插装和测试,否则就会出错。比如,操作系统的初始化函数os_init,在这个函数运行完毕之前,操作系统的相应机制尚未建立起来,因此对它进行插装就会造成问题,不能正确地得到覆盖信息。又比如,出于效率方面的考虑,与系统时钟相关的部分函数未被插装,因为在程序运行过程中,时钟是最频繁产生的一种外部事件,如果插装,就会产生大量的覆盖信息,会对信息缓存、传递、收集和处理造成压力。另外,所用的工具不支持对汇编函数的插装和测试。综合上述各种原因,DeltaCORE 1.1的总体覆盖率还显得比较低,需要采用其它的方法来提高它。对于非操作系统组件及应用的测试,由于不存在操作系统本身的问题,因此可望达到较高的覆盖率。

  ③该方法不能用于时间性能测试。因此它属于纯软件的测试方式,大量数据信息的产生、传递与收集对被测程序的干扰大,只能做白盒性的功能结构验证。如果做性能测试,应采用某些软硬结合方式的工具,比如CodeTEST。

  对嵌入式软件产品的测试是多方面的,除覆盖测试外,还有时间性能测试、内存使用测试与分析等,也是我们研究的重要课题。

原文转自:http://www.ltesting.net