论文部分内容阅读
随着计算机软件应用的日益普及,软件在日常生活中的地位不断提升,其质量也备受关注。软件回归测试是软件演化过程中保障软件质量的重要手段,然而其成本高昂,如何充分利用有限的测试资源,改善对待测软件的信心,成为了回归测试技术的研究热点。测试用例集约简技术致力于解决此类问题:通过一个给定的测试充分性标准,识别并剔除初始测试用例集中冗余的测试用例,得到一个具有代表性的精简测试用例集。传统的测试用例集约简技术,虽然可以很大程度上约简初始测试用例集的规模,但也会严重削弱其缺陷检测能力。针对该问题,本文提出了一种测试用例集分类约简方法(CATESR方法)。不同于传统的测试用例集约简技术,该方法认为,覆盖到代码修改的测试用例更易于检测出代码修改所引入的缺陷。基于此前提,CATESR方法首次利用代码修改对测试需求的影响,对测试用例进行分类,然后选择性地针对最相关分类的测试用例集子集进行约简。为了验证CATESR方法的有效性,本文做了一系列实证研究。本文的主要贡献总结如下:1.综述了回归测试技术中测试用例集约简技术的研究进展。介绍测试用例集约简技术的回归测试背景及框架;描述测试用例集约简技术研究的基本问题;综述测试用例集约简技术的研究现状;讨论测试用例集约简技术的有效性,主要包括缺陷检测能力和缺陷定位效率;2.提出了一种回归测试用例集分类约简方法(CATESR方法)。介绍CATESR方法的初始动机;阐述CATESR方法的基本框架;分析CATESR方法的三个核心模块:测试需求分类模块、测试用例分类模块和测试用例集约简模块;3.开展了CATESR方法的实证研究。提出三个针对CATESR方法有效性的研究问题并给出两个有效性评价指标;设计实验对8个标准实验对象使用CATESR方法;分析实验结果,回答CATESR方法的三个有效性问题,并讨论实验有效性的潜在影响因素及避免策略。实验结果表明,该方法不仅有助于提高精简测试用例集的约简程度,还可以改善其缺陷检测能力。