中文

A3Test:断言增强的自动化测试用例生成

软件工程 2023-02-22 v1

摘要

测试用例生成是一项重要活动,却也是耗时且繁琐的任务。近来,提出了 AthenaTest——一种用于生成单元测试用例的深度学习方法。然而,由于缺乏断言知识以及测试签名验证,AthenaTest 能正确生成的测试用例不足五分之一。本文中,我们提出 A3Test,一种基于深度学习的测试用例生成方法,其通过断言知识增强,并带有验证命名一致性与测试签名的机制。A3Test 利用领域自适应原则,旨在将断言生成任务的已有知识适配到测试用例生成任务。我们还引入了一种验证方法来验证命名一致性与测试签名。通过对来自 Defects4j 数据集的 5278 个焦点方法进行评估,我们发现我们的 A3Test:(1)相比 AthenaTest 以更少的生成测试用例数量实现了多 147% 的正确测试用例和 15% 的方法覆盖率;(2)在测试用例生成任务上仍优于现有的预训练模型;(3)通过我们提出的断言预训练与验证组件对性能提升贡献显著;(4)比 AthenaTest 快 97.2% 且更准确。

关键词

引用

@article{arxiv.2302.10352,
  title  = {A3Test: Assertion-Augmented Automated Test Case Generation},
  author = {Saranya Alagarsamy and Chakkrit Tantithamthavorn and Aldeida Aleti},
  journal= {arXiv preprint arXiv:2302.10352},
  year   = {2023}
}

备注

Under Review at ACM Transactions on Software Engineering and Methodology