论文部分内容阅读
随着现代科技的快速发展,计算机软件已经广泛应用于人们生活的各个领域,其质量也备受关注。因此软件测试在软件发展过程中占据着重要的地位。缺陷定位是软件测试中移除缺陷的重要步骤。因此提高缺陷定位的效率具有重要的意义。由于软件测试技术的不断发展,自动化测试被越来越多的运用在软件测试中,相比较传统的人工测试,它能帮助程序员定位缺陷的位置,可以极大的提高效率。其中基于执行轨迹的缺陷定位方法只需要被测程序和对应的测试用例集,将其和自动化测试相结合可以实现自动化的缺陷定位。本文研究了基于程序执行轨迹的缺陷定位,提出了一种基于条件概率公式的缺陷定位方法,试图通过全面地考虑对缺陷产生影响的两方面因素(失败的测试用例和执行的程序代码)来提高缺陷定位的效率。为了验证其有效性,本文做了一系列实证研究。本文的主要贡献总结如下:1.综述了软件测试中缺陷定位问题的研究进展。首先介绍了缺陷的概念和分类,并讨论了缺陷定位的相关术语。将现有缺陷定位方法分为基于程序执行轨迹、基于程序依赖关系、基于程序状态、基于测试用例集约减和基于方法调用五类。并详细介绍了各类方法的主要思想。重点介绍了基于程序执行轨迹的缺陷定位方法。2.提出了一种基于条件概率公式的缺陷定位方法。介绍了该方法的初始动机;阐述该方法的基本框架;然后基于此框架提出了新的基于条件概率公式的缺陷定位方法,具体介绍了该方法的设计和实现。3.开展了基于条件概率公式的缺陷定位方法的实证研究设计实验在8个标准实验对象上运用新提出的基于条件概率公式的缺陷定位方法,在通用的评价标准上将其和Tarantula、Ochiai等方法进行比较。分析实验结果,证明我们提出的基于条件概率公式的缺陷定位方法的有效性。