基于连锁学习交叉的多目标测试用例选择
软件工程
2021-07-21 v2 神经与进化计算
摘要
测试用例选择(TCS)旨在为回归测试选取运行测试套件的子集。该选择通常基于历史覆盖率和执行代价数据。研究者已成功使用多目标进化算法(MOEAs),如NSGA-II及其变体,来解决此问题。这些MOEA使用传统交叉算子通过基因重组产生新候选解。数值优化近期研究表明,利用机器学习(特别是连锁学习)可做出更好的重组。受该领域近期进展启发,我们提出NSGA-II的新变体L2-NSGA,使用连锁学习优化测试用例选择。具体而言,我们使用无监督聚类算法推断解(测试套件子集)间有潜力的模式,然后这些模式用于L2-NSGA的后续迭代以产生保持这些推断模式的解。我们的结果表明,定制化使NSGA-II在测试用例选择上更为有效。L2-NSGA生成的测试套件子集比文献中用于回归测试的MOEA所生成的代价更低且能检测更多故障。
引用
@article{arxiv.2107.08454,
title = {Multi-objective Test Case Selection Through Linkage Learning-based Crossover},
author = {Mitchell Olsthoorn and Annibale Panichella},
journal= {arXiv preprint arXiv:2107.08454},
year = {2021}
}