中文

面向测试用例优先排序的神经网络嵌入方法

软件工程 2020-12-22 v2 人工智能 机器学习

摘要

在现代软件工程中,持续集成(CI)已成为系统管理软件开发生命周期不可或缺的一步。由于大量相互叠加的变更与功能添加,且有众多开发者在不同平台上工作,大型公司难以在有用的时间内保持流水线更新与运转。与此类软件变更相关联的,始终有强烈的测试成分。随着团队和项目增长,穷尽测试迅速变得不可行,因此在不损害软件质量的前提下尽早筛选最相关测试用例变得至关重要。我们开发了一种称为面向测试用例优先排序的神经网络嵌入(NNE-TCP)的新工具,它是一个新颖的机器学习(ML)框架,分析在测试状态发生转变时哪些文件被修改,并通过将这些文件与测试映射为多维向量并按相似性分组来学习它们之间的关系。当进行新变更时,更可能与被修改文件相关联的测试被优先排序,从而减少了发现新引入故障所需的资源。此外,NNE-TCP 支持低维空间中的实体可视化,允许以其他方式为文件和测试按相似性分组并减少冗余。通过应用 NNE-TCP,我们首次表明被修改文件与测试之间的关联相对于其他传统方法是相关且具有竞争力的。

关键词

引用

@article{arxiv.2012.10154,
  title  = {Neural Network Embeddings for Test Case Prioritization},
  author = {João Lousada and Miguel Ribeiro},
  journal= {arXiv preprint arXiv:2012.10154},
  year   = {2020}
}

备注

11 pages, 6 figures and 2 tables