单元测试是软件开发中非常重要的一环,侧重于验证早期系统的基本单元。近年来,大语言模型凭借其出色的代码理解能力,在代码生成领域展示出了巨大的潜力,现有工作探索了大语言模型与单元测试领域任务结合的不同方式并取得了较大进展,但局限于较少的数据集以及模型,缺乏对大语言模型在单元测试领域中表现的系统性评估分析,难以让工业界全面理解大语言模型当前的真实能力。
iSE 实验室硕士生尚也通过大规模实验探索了大语言模型在单元测试领域中的实际表现。实验涉及测试用例生成,测试断言生成,测试用例演化三个单元测试任务,基于五项广泛使用的基准数据集以及八项代码相关评估指标,对大量不同系列,架构以及参数量的大语言模型进行了系统性评估。实验从多个角度对大语言模型在单元测试领域上的表现进行了分析,包括与现有 SOTA 方法、提示词工程方法、以及其他不同因素的多维对比分析。该研究得到了若干有意义的发现,为工业界如何在单元测试中有效使用大语言模型提供了若干实践指导,并为将来进一步提高大语言模型在单元测试领域的表现提供了方向。
该研究成果《 A Large-scale Empirical Study on Fine-tuning Large Language Models for Unit Testing 》已被软件工程领域国际会议 ISSTA 2025( CCF - A类会议 )全文录用( 录用比例 23 / 553 )。研究得到了国家自然科学基金与 CCF - 华为胡杨林基金软件工程专项的资助。基于该研究进一步实现的迭代修复的智能化单元测试生成方法已在华为开发者工具集成并使用。