- 简介自动化单元测试生成器,特别是像EvoSuite这样的基于搜索的软件测试工具,能够生成高覆盖率的测试。虽然这些生成器减轻了编写单元测试的负担,但它们通常会给软件工程师带来理解生成测试的挑战。为了解决这个问题,我们介绍了UTGen,它结合了基于搜索的软件测试和大型语言模型,以增强自动生成的测试用例的可理解性。我们通过对测试数据进行上下文化处理、改进标识符命名和添加描述性注释来实现这种增强。通过对来自学术界和工业界的32名参与者进行控制实验,我们研究了单元测试的可理解性如何影响软件工程师执行错误修复任务的能力。我们选择错误修复来模拟强调可理解测试用例重要性的真实世界场景。我们观察到,使用UTGen测试用例的参与者修复的错误多达33%,并且使用的时间最多比基准测试用例少20%。从后测试问卷中,我们了解到参与者发现增强的测试名称、测试数据和变量名称改善了他们的错误修复过程。
- 图表
- 解决问题提高自动生成单元测试的可读性以提高软件工程师的工作效率和Bug修复能力
- 关键思路使用搜索软件测试和大型语言模型相结合的方法,对自动生成的单元测试进行上下文化、改进标识符命名和添加描述性注释,以提高可读性和理解性
- 其它亮点通过对32名来自学术界和工业界的参与者进行的控制实验,观察到使用UTGen测试用例的参与者修复的Bug数量增加了33%,使用时间减少了20%,实验结果表明,增强的测试名称、测试数据和变量名称可以提高软件工程师的Bug修复流程
- 与本论文相关的研究包括EvoSuite等自动生成单元测试工具,以及大型语言模型在软件工程中的应用


提问交流