中文

DeepOrder:用于持续集成测试中测试用例优先级排序的深度学习

软件工程 2021-10-15 v1 机器学习

摘要

持续集成测试是现代软件工程生命周期中的重要步骤。测试优先级排序是一种方法,通过在每个周期的早期阶段选择能够检测故障的测试用例,可以提高持续集成测试的效率。由于持续集成测试会产生大量的测试执行数据,测试历史是测试优先级排序中常用的工件。然而,现有的持续集成测试优先级排序技术要么无法处理大量的测试历史,要么针对使用有限数量的历史测试周期进行了优化。我们表明,这种限制会降低优先级排序后的测试套件的故障检测有效性。本文介绍了 DeepOrder,这是一种基于回归机器学习的深度学习模型。DeepOrder 基于任意数量先前测试周期的测试执行历史记录对测试用例进行排序。DeepOrder 基于包括测试用例的持续时间和执行状态在内的多种因素来学习失败的测试用例。我们通过实验表明,深度神经网络作为一种简单的回归模型,可以有效地用于持续集成测试中的测试用例优先级排序。DeepOrder 在时间有效性和故障检测有效性方面与工业实践和现有技术方法进行了比较评估。结果表明,DeepOrder 在这两个指标上均优于工业实践和现有技术的测试优先级排序方法。

关键词

引用

@article{arxiv.2110.07443,
  title  = {DeepOrder: Deep Learning for Test Case Prioritization in Continuous Integration Testing},
  author = {Aizaz Sharif and Dusica Marijan and Marius Liaaen},
  journal= {arXiv preprint arXiv:2110.07443},
  year   = {2021}
}

备注

10 pages, 9 figures, conference paper