论文

FeedbackLLM:元数据驱动的多代理语言无关测试用例生成器,具有不断变化的提示和覆盖范围反馈

FeedbackLLM: Metadata driven Multi-Agentic Language Agnostic Test Case Generator with Evolving prompt and Coverage Feedback

摘要

传统的测试用例生成方法通常涉及手动操作并产生大量的计算开销。此外,这些方法不可扩展,因此不适合复杂的软件系统。最近,大语言模型(LLM)已应用于软件测试。然而,单次提示的基于工程的方法往往会产生幻觉并生成冗余的测试用例,从而导致分支较少。为了解决上述限制,在本文中,我们提出了 FeedbackLLM,一种基于紧密耦合的两阶段方法的新型自动化与语言无关的测试用例生成框架。在第一阶段,FeedbackLLM通过解析源代码提取输入约束并生成可能的测试用例。测试用例的质量在第二阶段由以下两个专门的 LLM 反馈代理进行评估:(i)行反馈代理:提取与错过的行执行相关的元数据;(ii)分支反馈代理:提取未执行的分支条件的元数据。上述代理以两阶段过程运行,串联通信,并且该过程重复 k 个步骤。此外,我们还引入了冗余预防缓存,以避免重复的 API 请求并避免不必要的执行周期。所提出的架构的性能是在与 C 和 Python 程序相关的标准基准程序上进行评估的。 FeedbackLLM 展示了比基线工具更多的线路和分支覆盖率,同时线性扩展执行时间。