李佳婧 苏小红 马培军 龚丹丹
摘要: 已有的面向错误定位的测试用例选择方法大多数仅考虑了测试用例的语句覆盖信息,不能为错误定位选择合适的测试用例,从而导致不能有效提高错误定位的准确性。针对这一问题,提出了一种新的测试用例选择方法。文中方法分析了测试用例的执行路径信息,根据测试用例动态执行时的分支特征,采用分支聚类方法对测试用例进行选择。实验表明,提出的方法可以有效减少测试用例数量,降低错误定位的复杂度,并提高错误定位的准确性。
关键词:
中图分类号:TP311文献标识码:A文章编号:2095-2163(2012)05-0016-04
0引言
随着人们日常生活对计算机软件的需求不断增长,软件系统的规模和复杂度也在不断攀升,而对大规模复杂系统的测试和维护等需求超出了目前的测试与维护技术能力,因此也就出现了许多与软件失效相关的事故,并且大多数的失效都是由于软件错误导致的。软件发生失效后,如何找到引发失效的错误位置或引发失效的原因,就是错误定位?眼1-4?演问题。而软件错误定位算法的复杂度高,并且冗余的测试用例会影响软件错误定位的准确性。为了降低错误定位的复杂度,提高错误定位的准确性,对如何选择有利于实现错误定位的测试用例开展研究则具有重要意义。传统的测试用例选择方法多数是面向软件测试的需求,追求的是测试的充分性,而面向错误定位的测试用例选择方法则是侧重于选择对错误定位有效的测试用例。所以面向软件测试需求选择得到的测试用例集合并不完全适用于错误定位,甚至有些冗余的测试用例还会影响到软件错误定位的准确性。为了提高错误定位的准确性并且降低其复杂度,研究面向错误定位的测试用例选择方法是极其重要的。
目前,面向软件错误定位需求的测试用例选择方法的研究也逐渐增多。如Renieris?眼5?演等提出“近邻模型”,该模型的主要思想是在失效测试用例的邻域附近选择成功测试用例,利用