中文

面向精确类型错误检测的基于大语言模型的反思单元测试生成

软件工程 2025-10-03 v2

摘要

Python 中的类型错误常导致运行时故障,给软件可靠性和开发者生产力构成重大挑战。现有的静态分析工具旨在检测此类错误而无需执行,但经常 suffer 高假阳性率。最近的单元测试生成技术在实现高测试覆盖率方面表现出色,但往往难以在缺乏定制化指导的情况下生成能揭露缺陷的测试。为解决这些限制,我们提出了 RTED(Reflective Unit Test Generation),一种新颖的类型感知测试生成技术,用于自动检测 Python 类型错误。具体而言,RTED 将逐步类型约束分析与反思验证相结合,以指导测试生成过程并有效抑制假阳性。我们在两个广泛使用的基准测试上对 RTED 进行了评估,分别是 BugsInPy 和 TypeBugs。实验结果表明,RTED 能检测出比四种最先进技术多出 22-29 个基准类型错误。RTED 还能够产生更少的假阳性,实现了 173.9%-245.9% 的精度提升。此外,RTED 成功发现了来自六个真实世界开源 Python 项目中 12 个此前未知的类型错误。

关键词

引用

@article{arxiv.2507.02318,
  title  = {Reflective Unit Test Generation for Precise Type Error Detection with Large Language Models},
  author = {Chen Yang and Ziqi Wang and Yanjie Jiang and Lin Yang and Yuteng Zheng and Jianyi Zhou and Junjie Chen},
  journal= {arXiv preprint arXiv:2507.02318},
  year   = {2025}
}

备注

accepted in the research track of ASE 2025