敏捷开发环境中的回归测试优化技术
版本频繁交付、功能不断新增或修改、测试用例不断增多是敏捷开发环境的特点.回归测试是软件测试的一个重要组成部分,它在敏捷开发环境中更应基于环境特点进行设计.但是,传统的回归测试优化技术(测试用例优先排序或回归测试选择等)各有其优缺点,且没有考虑敏捷开发环境对测试效率的影响.测试用例优先排序技术利用设计规则对所有测试用例进行排序,以提高错误检测率,但测试集基数大,花费时间长.回归测试选择技术选择部分测试用例执行,减少了测试执行时间,但存在不安全因素.为了解决这个问题,本文提出新的敏捷开发环境中的回归测试优化技术.首先,将回归测试拆分成两个过程,提出在这两个过程中的测试方法:敏捷测试用例优先排序和敏捷回归测试选择.敏捷测试用例优先排序方法基于历史排序的思想,将需求、错误反馈及历史信息三者结合,形成一个具有记忆的优先排序技术.敏捷回归测试选择方法结合错误信息和需求关联信息进行设计,选择以往版本中发现错误的测试用例及与新增测试有交互的测试用例作为测试子集,既检验曾经出错的功能是否正确,又检验新增功能加入是否影响已交付功能的稳定.其次,将敏捷排序和敏捷选择方法结合,设计回归测试优化模型,提出优化算法.为测试子集中的每一个测试用例设置一个失效标签以动态调整子集规模.最后,通过在不同规模的实验对象上进行实验,分析优化算法的有效性.实验结果表明,与现有的测试排序和测试选择及其混合方法相比,敏捷开发环境中的回归测试优化技术既可达到高错误检测率又可减少待执行测试用例数量同时保证较高的安全性.从统计分析t检验结果看,我们的方法在纠错速率上优于其它5种测试排序方法,因为t值均大于0且p值均小于0.05;从纠错速率、效率成本百分比、运行时间缩减率及揭露错误百分比这4个方面的综合指数看,本文的方法最佳.
回归测试、测试用例优先排序、回归测试选择、敏捷开发、软件测试、软件工程
42
TP311(计算技术、计算机技术)
国家自然科学基金61572306
2019-11-07(万方平台首次上网日期,不代表论文的发表时间)
共16页
2323-2338