使用LLM生成测试用例以检测棘手的错误
本文通过详细的案例研究,探讨了在软件工程背景下,应用大型语言模型(LLMs)构建测试用例的方法。通过定性和定量分析,评估了LLMs对测试用例全面性、准确性和效率的影响,并讨论了模型可解释性、伦理考虑和适应不同软件环境的挑战。本研究的结果为软件测试领域中应用LLMs提供了实用性见解,旨在促进对LLMs在优化软件开发过程中作用的全面理解。
Dec, 2023
这篇研究报告分析了使用三个主要大型语言模型(CodeGen、PanGu-Coder和Codex)生成的代码中的333个错误模式,并通过在线调查得到了34位使用大型语言模型的从业人员和研究人员对这些错误模式的重要性和普遍性的确认。研究人员和从业人员可以利用这些发现来开发有效的大型语言模型生成代码的质量保证技术。该研究揭示了大型语言模型生成代码的独特特征。
Mar, 2024
使用大型语言模型(LLMs)生成高质量的测试用例是一个重要问题,目前的研究主要集中在改进代码生成过程中通过LLMs生成辅助测试用例的性能,而LLMs在仅生成测试用例方面的性能尚未全面研究。为了填补这一空白,本文通过大量实验研究了LLMs生成高质量测试用例的能力,并提出了一种名为TestChain的多代理框架,通过与Python解释器的交互提供更准确的测试输出,实验结果表明TestChain在测试用例准确性上明显优于基准模型,其中使用GPT-4作为基础的TestChain在LeetCode-hard数据集上相比基准模型改进了13.84%。
Apr, 2024
使用大型语言模型进行代码生成的能力仍具有一定限制,代码生成的结果通常较为复杂且存在错误,通过研究相关的问题和推导出的漏洞类型,提出了一个训练自由的迭代方法来减少错误并增加合格率。
Jul, 2024
本研究针对现有单元测试生成方法在复杂真实软件开发情境下的局限,提出了一种新的测试生成与评估方案。我们的系统\textsc{AgoneTest}专注于类级测试代码的自动生成,并自动化了从测试生成到评估的全过程。研究显示,该系统能够有效提升测试质量,并为多种 Java 项目生成高效的测试套件。
Aug, 2024
本研究解决了大型语言模型(LLMs)代码生成的可靠性问题,特别是识别和分析生成代码中的缺陷。通过对367个缺陷进行分类和分析,发现了功能和算法错误是主要问题。研究表明,通过实施结构化的提示工程技术,可以显著减少常见缺陷,提高代码生成的准确性和可靠性。
Aug, 2024
本研究解决了一个重要问题:不正确的源代码如何影响大语言模型(LLMs)在生成测试用例时的有效性。通过评估五个开放源代码和六个闭源LLMs,发现错误代码显著降低了测试的准确性和缺陷检测能力。这一发现强调了在使用LLMs进行测试时,需要谨慎处理初期不成熟代码,以避免把错误嵌入系统中。
Sep, 2024
本研究解决了在源代码错误的情况下,大型语言模型(LLMs)生成测试用例的有效性问题。研究发现,错误的代码会显著误导LLMs生成正确性、覆盖率和缺陷检测效果都较差的测试用例,这对于LLMs在成熟代码和早期代码上的应用具有重要影响,同时强调了提高LLMs对错误代码抵抗力的必要性。
Sep, 2024