Can LLMs Demystify Bug Reports?
本研究针对现有工具难以自动处理自然语言Bug报告的问题,用Defects4J基准测试ChatGPT,发现其能复现50%的报告Bug,展现了人机协同处理Bug的应用潜力。
2023-10-10 cs.SE
TreeMind: Automatically Reproducing Android Bug Reports via LLM-empowered Monte Carlo Tree Search
Anhui University(安徽大学);University of Science and Technology of China(中国科学技术大学)
TreeMind结合LLM与MCTS算法,通过语义推理和反馈导航,高效重现Android bug报告。
2026-02-01 cs.SE
DeepDiagnosis: Automatically Diagnosing Faults and Recommending Actionable Fixes in Deep Learning Programs
Iowa State University(爱荷华州立大学)
深度神经网络(DNN)被用于各种各样的应用中。然而,与任何软件应用程序一样,基于DNN的应用程序也存在漏洞。以前的工作观察到DNN错误修复模式与传统的错误修复模式不同。此外,这些有缺陷的模型是不平凡的诊断和修复,由于不明确的错误,有几个选项来修复它们。为了支持开发人员定位和修复错误,我们提出了DeepDiagnosis,这是一种新的调试方法,可以定位故障,报告错误症状并为DNN程序提供修复建议。在第一阶段,我们的技术监控训练模型,定期检查八种类型的错误条件。然后,在出现问题的情况下,它会报告包含足够信息的消息,以对模型执行可操作的修复。在评估中,我们彻底检查了444个模型-53个来自GitHub和Stack Overflow的真实世界,391个由AUTOTRAINER策划。与UMLUAT和DeepLocalize相比,DeepDiagnosis提供了更高的准确性。我们的技术比AUTOTRAINER更快的故障定位。结果表明,我们的方法可以支持其他类型的模型,而最先进的只能处理分类的。我们的技术能够报告在训练过程中不表现为数值错误的错误。此外,它可以为修复提供可操作的见解,而DeepLocalize只能报告在训练期间导致数值错误的错误。与其他方法相比,DeepDiagnosis表现出故障检测,错误定位和症状识别的最佳功能。
2021-12-07 cs.LG cs.SE
Learning how to listen: Automatically finding bug patterns in event-driven JavaScript APIs
事件驱动编程在JavaScript社区中得到了广泛的实践,在客户端处理UI事件和AJAX请求,在服务器端处理文件或网络I/O等长时间运行的操作。许多流行的基于事件的API允许将事件名称指定为自由格式的字符串而不进行任何验证,这可能导致未注册侦听器的事件丢失,以及从未发出的事件的死侦听器。在以前的工作中,Madsen等人提出了一种用于检测此类问题的精确静态分析,但他们的分析无法扩展,因为它可能需要大量的上下文,这些上下文在程序大小上是指数级的。集中在检测死侦听器的问题,我们提出了一种方法来学习如何正确使用基于事件的API,首先使用一个简单的静态分析挖掘一个大型的JavaScript代码语料库,以识别注册事件侦听器的代码片段,然后应用统计建模来识别异常模式,这往往表明不正确的API使用。通过对127,531个开源JavaScript代码库的大规模评估,我们的技术能够检测到75个异常标记注册模式,同时在我们的验证集上保持90.9%的精度和7.5%的召回率,这表明基于学习的方法来检测事件处理错误是可行的。在另一个实验中,我们调查了25个开源项目中这些模式的实例,并向项目维护人员报告了30个问题,其中7个已被确认为bug。
2022-02-11 cs.SE
AgentBug-Smith: Automatically Reproducing Real-World Harness Bugs in Agentic Systems
The University of Chicago(芝加哥大学);Fudan University(复旦大学);TensorBlock, Inc.(TensorBlock公司);Tsinghua University(清华大学);University of Illinois Urbana-Champaign(伊利诺伊大学厄巴纳-香槟分校)
本文提出 AgentBug-Smith 自动复现智能体系统中的真实 harness 缺陷,并构建 Live-Harness-Bench 基准(含 200 个缺陷),显著提升缺陷修复率,为递归自我改进智能体奠定基础。
2026-09-30 cs.AI cs.SE
Predicting Bugs' Components via Mining Bug Reports
复杂软件中的bug报告数量急剧增加。现在bug是手动分类的,bug分类或分配是一项劳动密集型和耗时的任务。在不了解软件结构的情况下,测试人员经常错误地指定新bug的组件。同时,故障诊断人员很难仅通过描述来确定故障的组成部分。我们在Eclipse Bug项目中挖掘出28,829个Bug的组件被错误指定并至少修改过一次。这导致这些错误必须重新分配,并延迟了错误修复的过程。错误指定的bug的平均修复时间比正确指定的bug的平均修复时间长。为了自动解决这个问题,我们使用历史的固定的错误报告作为训练语料库,并建立基于支持向量机和朴素贝叶斯分类器来预测一个新的错误的组件。在Eclipse项目的验证语料上,最佳预测准确率达到81.21%。平均而言,我们的预测模型可以为Triagers和开发人员节省大约54.3天的时间来修复bug。关键词:错误报告;错误分类;文本分类;预测模型
2011-04-14 cs.SE
Data Loss Detector: Automatically Revealing Data Loss Bugs in Android Apps
Android应用程序必须正常工作,即使它们的执行被外部事件中断。例如,即使接到电话,或者因为智能手机旋转而重新绘制布局后,应用程序也必须正常工作。由于这些事件可能需要在执行中断时销毁应用的前台Activity,并在执行恢复时重新创建应用的前台Activity,因此防止状态信息丢失的唯一方法是保存和恢复状态信息。此行为必须由应用开发人员显式实现,他们经常无法正确实现,从而释放受数据丢失问题影响的应用,即,应用程序在执行中断时可能会丢失状态信息。虽然有几种技术可用于自动生成Android应用程序的测试用例,但所获得的测试用例很少包括执行和显示数据丢失故障所需的交互和检查。为了解决这个问题,本文提出了数据丢失检测器(DLD),一个测试用例生成技术,集成了探索策略,数据丢失揭示行动,和两个定制的oracle策略,用于检测数据丢失故障。DLD已经能够在受110个已知数据丢失故障影响的54个Android应用程序版本的基准测试中发现75%的故障。DLD还揭示了未知的数据丢失问题,优于竞争方法。
2020-10-12 cs.SE
GIFdroid: Automated Replay of Visual Bug Reports for Android Apps
错误报告对于软件维护至关重要,它允许用户通知开发人员在使用软件时遇到的问题。然而,对于非技术用户来说,很难写清楚关于bug发生的描述。因此,越来越多的用户开始记录报告错误的屏幕,因为它很容易创建,并包含触发错误的详细过程。但是,由于记录中的长度和不清楚的操作,开发人员重现错误仍然是繁琐和耗时的。为了克服这些问题,我们提出了GIFdroid,一个轻量级的方法来自动重放的执行跟踪从视觉错误报告。GIFdroid采用图像处理技术从记录中提取关键帧,将其映射到GUI Transitions Graph中的状态,并生成这些状态的执行轨迹以触发bug。我们的自动化实验和用户研究证明了它的准确性,效率和实用性的方法。
2022-04-19 cs.SE
SysPro: Reproducing System-level Concurrency Bugs from Bug Reports
University of Maryland Baltimore County(马里兰大学巴尔的摩县分校);Zhejiang Provincial Financial Holdings Co,ltd(浙江省金融控股有限公司);The University of Melbourne(墨尔本大学);Queensland University of Technology (QUT)(昆士兰科技大学);Zhejiang University(浙江大学);University of Connecticut(康涅狄格大学)
SysPro通过自动提取系统调用信息和生成输入数据,有效重现系统级并发bug。
2026-01-14 cs.SE
CrossFix: Collaborative bug fixing by recommending similar bugs
已经提出了许多自动程序修复技术来修复错误。这些技术中的一些使用了给定的错误程序和测试套件之外的信息来提高生成的补丁的质量。然而,存在阻碍这些技术的广泛采用的几个限制,包括(1)它们依赖于用于补丁生成或参考实现的固定的修复模板集合,(2)搜索合适的参考实现是具有挑战性的,(3)生成的补丁是不可解释的。与此同时,最近的一种方法表明,不同的项目中存在类似的bug,人们可以使用不同项目的GitHub问题来查找相关项目的新bug。我们提出了合作修复错误,一个novelapproach,建议错误报告,描述了一个类似的错误。我们的研究重新定义了类似的错误,这些错误共享(1)相同的库,(2)相同的功能,(3)相同的复制步骤,(4)相同的配置,(5)相同的结果,或(6)相同的错误。此外,我们的研究揭示了类似错误在帮助开发人员找到更多关于错误和修复的上下文方面的有用性。基于我们的研究,我们设计了CrossFix,这是一个基于开放的GitHub问题自动建议相关GitHub问题的工具。我们对来自Java和Android项目的249个开放问题的评估表明,CrossFix可以建议类似的错误,以帮助开发人员调试和修复。
2021-03-24 cs.SE
Assessing the Quality of the Steps to Reproduce in Bug Reports
由开发人员指出并由研究人员记录的用户编写的错误报告的一个主要问题是报告重现错误的步骤(缺乏高)质量。低质量的复制步骤会导致在错误分类和解决上花费过多的手动工作。本文提出了欧拉,一种方法,自动识别和评估的质量的步骤,重现在一个错误报告,提供反馈给记者,他们可以用来改善错误报告。外部评估人员对Euler提供的反馈进行了评估,结果表明,Euler正确识别了98%的现有复制步骤和58%的缺失步骤,而73%的质量注释是正确的。
2019-06-17 cs.SE
Scalable Statistical Root Cause Analysis on App Telemetry
尽管工程工作流程旨在防止错误代码被部署,但错误仍然会进入Facebook应用程序。当报告这些错误的症状时,例如用户提交的报告和自动捕获的崩溃,找到其根本原因是解决问题的重要一步。然而,在Facebook数十亿用户的规模下,根据软件部署的各种用户和执行环境,单个错误可以表现为几种不同的症状。因此,根本原因分析(RCA)需要繁琐的人工调查和领域专业知识,以提取出在报告组中观察到的常见模式,并将其用于调试。我们提出扫雷,RCA的一种技术,走向自动识别错误的根本原因,从他们的症状。该方法基于两个关键方面:(i)可扩展的算法,以有效地从与报告一起收集的遥测信息中挖掘模式,以及(ii)有助于指向根本原因的模式的精确度和召回率的统计概念。我们评估了扫雷的可扩展性和有效性,从现实世界的bug和Facebook应用程序的崩溃报告中找到根本原因。我们的评估表明,Minesweeper可以在不到3分钟的时间内对数万份报告执行RCA,并且在识别回归的根本原因方面的准确率超过85%。
2021-03-17 cs.SE
DREAM: Debugging and Repairing AutoML Pipelines
University of Massachusetts(马萨诸塞大学)
本文针对AutoML系统中存在的性能漏洞和无效搜索漏洞,设计并实现了自动调试与修复系统DREAM,通过监控过程收集反馈并利用扩展搜索空间及反馈驱动策略,有效高效地修复了AutoML漏洞。
2023-12-31 cs.AI cs.SE
Recommending Bug Assignment Approaches for Individual Bug Reports: An Empirical Investigation
本文通过实证研究发现现有缺陷分配方法对不同缺陷报告效果不一,提出用机器学习为每份报告推荐最佳方法,虽有一定准确率提升但与基线相当,揭示了现有方法未捕捉开发者实际分配过程的关键信息。
2023-05-29 cs.SE
ViBR: Automated Bug Replay from Video-based Reports using Vision-Language Models
The Chinese University of Hong Kong (Shenzhen)(香港中文大学(深圳));University of Connecticut(康涅狄格大学);TU Munich(慕尼黑工业大学);Monash University(蒙纳士大学)
本文提出ViBR,一种基于视觉-语言模型的自动化Bug回放方法,通过动作边界分割和区域感知的GUI状态比较,实现从GUI视频记录中自动复现Bug,实验表明其复现率达72%。
2026-04-21 cs.SE
Improving IR-Based Bug Localization with Context-Aware Query Reformulation
最近的研究结果表明,信息检索(IR)为基础的缺陷定位技术不执行,如果缺陷报告缺乏丰富的结构化信息(如相关的程序实体名称)。相反,错误报告中过多的结构化信息(例如堆栈跟踪)也可能并不总是有助于自动化本地化。在本文中,我们提出了一种新的技术--BLIZZARD--使用适当的查询重构和有效的信息检索,自动定位错误实体的项目源。特别是,我们的技术确定是否有过多的程序实体或没有在一个错误报告(查询),然后适用于适当的重构查询的错误定位。使用5,139个错误报告的实验表明,我们的方法可以定位有错误的源文档,Hit@10比基线方法高7%-56%,MAP@10比基线方法高6%-62%,MRR@10比基线方法高6%-62%。与最先进的技术及其变体的比较报告,我们的技术可以提高19%,在MAP@10和20%,在MRR@10的国家的最先进的,并可以改善59%的噪声查询和39%的穷人查询。
2018-08-01 cs.SE
Feedback-Driven Automated Whole Bug Report Reproduction for Android Apps
本文提出反馈驱动的方法ReBL,利用GPT-4和整份文本错误报告自动复现Android错误报告,在96份报告上实现90.63%成功率,优于三种现有工具。
2024-08-28 cs.SE
Bug Tracking and Reporting System
这是信息的世界。不断增长的领域信息技术有其许多先进的显着特点,使它成为今天的样子。在这个世界上,信息必须经过处理,明确分布,并且必须有效地到达最终用户。否则,我们知道它会导致灾难性的情况。同一阶段的另一个硬币是绝对有必要知道最终用户面临的任何错误。Bug跟踪和报告系统项目旨在提供解决方案。Bug Tracker可以由任何两种类型组成。第一个是系统侧,另一个是服务侧。我们的项目涉及第二个。这篇论文完全致力于跟踪出现在这里的错误。管理员维护关于错误ID、错误类型、错误描述、错误严重性、错误状态、用户详细信息的主详细信息。管理员也有权更新严重性级别、状态级别等文件模块的主详细信息。管理员添加用户并分配他们完成论文的责任。最后,在分析分配给特定用户的论文时,管理员可以跟踪错误,并按照严重性和状态的顺序自动添加到包含错误的表中。管理员可以随时以报告的形式了解分配给各个用户的各种文件中的信息,他们的错误跟踪状态,他们的描述等。
2013-09-05 cs.SE
A Bug or a Suggestion? An Automatic Way to Label Issues
Nanjing University(南京大学);The Hong Kong Polytechnic University(香港理工大学)
越来越多的用户和开发人员正在使用问题跟踪系统(ITS)报告问题,包括错误,功能请求,增强建议等。然而,当在不同的ITS上报告问题时,会从用户那里收集不同的信息,这对问题分类工具在ITS中有效工作提出了相当大的挑战。此外,当涉及到分类问题时,错误通常具有更高的优先级,而现有的问题分类方法很少关注区分错误和其他非错误问题,导致错误识别的准确性不佳。在本文中,我们提出了一种基于深度学习的方法来自动识别各种ITS中的错误报告问题。该方法实现了k-NN算法来检测和纠正从ITS中提取的数据中的错误分类,并使用超过120万个标记问题的数据集来训练基于注意力的双向长短期记忆(ABLSTM)网络以识别错误报告。实验评估表明,我们的方法在区分错误和其他问题方面达到了85.6%的F-度量,显著优于实验中检查的其他基准和最先进的方法。
2019-09-03 cs.AI cs.SE
AndroR2: A Dataset of Manually Reproduced Bug Reports for Android Applications
软件维护构成了软件开发生命周期的很大一部分。为了执行维护任务,开发人员通常需要理解并复制错误报告。因此,越来越多的研究活动围绕着自动化与bug报告相关的各种活动的概念。这种研究兴趣的相当大一部分集中在移动应用程序领域。然而,随着围绕移动应用程序错误报告的研究进展,显然需要一组手动审查和可复制的真实世界错误报告,可以作为未来工作的基准。本文介绍了ANDROR2:Google Play上列出并托管在GitHub上的Android应用程序的90个手动复制的错误报告的数据集,通过深入分析从GitHub问题跟踪器中提取的459个报告系统地收集。对于每个复制的报告,ANDROR2包括原始错误报告,应用程序错误版本的apk文件,可执行复制脚本以及与原始报告相关的复制步骤质量相关的元数据。我们相信,ANDROR2数据集可用于促进自动分析、理解、复制、本地化和修复移动应用程序以及其他更广泛的软件维护活动的研究。
2021-06-15 cs.SE
CLeBPI: Contrastive Learning for Bug Priority Inference
自动化的错误优先级推理可以减少错误诊断器分配优先级的时间开销,提高软件维护的效率。目前,这项任务有两条正交线,即,传统的基于机器学习(基于TML)和基于神经网络(基于NN)的方法。尽管这些方法取得了很好的性能,但我们发现现有的方法面临以下两个问题:1)基于TML的方法需要大量的人工特征工程,无法学习错误报告的语义信息; 2)基于TML和基于NN的方法都不能有效解决标签不平衡问题,因为它们很难区分具有不同优先级的错误报告之间的语义差异。在本文中,我们提出了CLeBPI(错误优先级推理的对比学习),它利用预训练的语言模型和对比学习来解决上述两个问题。具体而言,CLeBPI首先以自监督的方式在大规模错误报告语料库上进行预训练,因此它可以自动学习错误报告的上下文表示,而无需手动特征工程。之后,它进一步通过对比学习目标进行预训练,这使它能够区分错误报告之间的语义差异,为每个错误报告学习更精确的上下文表示。当完成预训练时,我们可以将分类层连接到CLeBPI,并以监督的方式对其进行微调以进行bug优先级推断。为了验证CLeBPI的有效性,我们选择了四种基线方法,并在公共数据集上进行了比较实验。实验结果表明,CLeBPI在加权平均F1分数方面优于所有基线方法23.86%-77.80%,显示了其有效性。
2022-12-02 cs.SE
Prompting Is All You Need: Automated Android Bug Replay with Large Language Models
针对 Android 缺陷复现依赖人工模式与预定义词汇的问题,本文提出基于 LLM 提示工程、少样本学习和思维链推理的 AdbGPT,无需训练即可高效复现缺陷。
2024-05-08 cs.SE
An Empirical Study on the Capability of LLMs in Decomposing Bug Reports
本研究实证评估了ChatGPT和DeepSeek在分解复杂Bug报告中的能力,发现少样本提示能显著提升LLM的真实分解率,但整体准确性和理解能力仍需改进。
2025-04-29 cs.SE
Fast Changeset-based Bug Localization with BERT
将软件错误自动定位到导致它们的变更集有可能提高软件开发人员的效率并对软件质量产生积极影响。为了促进这种自动化,bug报告必须与源代码更改有效地匹配,即使在用于描述bug的自然语言和开发人员使用的标识符命名实践之间存在显著的词汇差距。为了弥合这一差距,我们需要的技术,能够捕捉到软件工程特定的和项目特定的语义,以检测两种类型的文档之间的相关性,超出了精确的术语匹配。流行的基于transformer的深度学习架构,如BERT,擅长利用上下文信息,因此似乎是该任务的合适候选者。然而,BERT类模型在计算上是昂贵的,这使得它们不能用于响应时间很重要的环境中。在本文中,我们描述了如何使BERT足够快,适用于基于变更集的错误定位。我们还探讨了为此目的使用BERT的几个设计决策,包括如何最好地编码变更集,以及如何将错误报告与单个变更匹配以提高准确性。我们将模型的准确性和性能与非上下文基线(即,向量空间模型)和以前在软件工程中使用的基于BERT的体系结构。我们的评估结果表明,使用建议的BERT模型相比,基线的优势,特别是对于错误报告,缺乏任何提示相关的代码元素。
2022-04-11 cs.SE
Enhancing Mobile App Bug Reporting via Real-time Understanding of Reproduction Steps
开发人员从用户那里接收关于软件现场故障的反馈的主要机制之一是通过错误报告。不幸的是,手工编写的错误报告的质量可能会有很大的差异,这是因为需要包括基本信息,例如详细的复制步骤(S2R)。尽管报告者面临着困难,但很少有现有的错误报告系统试图为用户提供自动化的帮助,以制作易于阅读和方便复制的错误报告。为了解决需要积极主动的错误报告系统,积极帮助用户捕捉关键信息,我们介绍了一种新的错误报告方法,称为EBug。EBug通过实时的【形】分析报告者输入的自然语言信息,并将这些数据与通过静态和动态程序分析相结合提取的信息联系起来,帮助报告者为移动应用程序编写S2R。当记者编写S2R时,EBug能够使用根据实际应用程序使用情况训练的预测模型自动建议潜在的未来步骤。为了评估EBug,我们基于来自$11$真实世界应用程序的20个故障进行了两项用户研究。实证研究涉及10名参与者,每个人提交了10个错误报告,10名开发人员复制了提交的错误报告。在这些研究中,我们发现报告者使用EBug构建错误报告的速度比使用最先进的错误报告系统作为基线要快31倍。EBug的报告相对于基线生成的报告也更具可重复性。此外,我们将EBug的预测模型与其他预测建模方法进行了比较,发现总体而言,我们方法的预测模型优于基线方法。我们的研究结果是有希望的,并展示了潜在的好处,提供了积极的辅助错误报告系统。
2022-03-22 cs.SE
LadyBug: A GitHub Bot for UI-Enhanced Bug Localization in Mobile Apps
LadyBug是一个GitHub机器人,结合UI交互信息与文本检索自动定位Android应用缺陷,在RedWing基准上优于基线,显著提升定位准确性。
2025-08-07 cs.SE
ImproBR: Bug Report Improver Using LLMs
Bilkent University(比尔肯特大学)
ImproBR通过结合DistilBERT、启发式分析和LLM分析,提升bug报告的结构完整性、可执行性及可复现性,显著提高质量。
2026-04-28 cs.AI cs.SE
Large Language Models are Few-shot Testers: Exploring LLM-based General Bug Reproduction
针对现有测试生成技术难以从通用缺陷报告复现缺陷的问题,提出基于大语言模型的LIBRO框架,通过后处理排序测试有效性,在Defects4J等基准上取得良好效果,可提升开发效率。
2023-07-25 cs.SE
Continuously Learning Bug Locations
本文提出利用持续学习技术应对概念漂移,在非静态设置下进行缺陷定位,实验表明其性能显著优于深度学习方法,且计算成本更低。
2024-12-15 cs.SE
Automated Duplicate Bug Report Detection in Large Open Bug Repositories
Department of Computer Science University of Colorado Colorado Springs United States(计算机科学系,科罗拉多州立大学,美国);George Mason University, Fairfax, VA, United States(乔治·马歇尔大学,弗吉尼亚州 Fairfax,美国)
本文提出基于机器学习的自动检测重复bug报告方法,通过多种技术提升准确率,应用于Eclipse开源项目数据集。
2025-04-21 cs.AI cs.SE
Detecting Speech Act Types in Developer Question/Answer Conversations During Bug Repair
University of Notre Dame(圣母大学);Clemson University(克莱姆森大学);Google(谷歌)
本文主要研究了语音修复会话中的言语行为检测问题。我们与30名专业程序员进行了一项“绿野仙踪”实验,程序员在两个小时内修复错误,并使用模拟的虚拟助手进行帮助。然后,我们使用一个开放的编码人工标注过程来识别会话中的言语行为类型。最后,我们训练并评估一个监督学习演算法来自动侦测对话中的言语行为类型。在30个两小时的对话中,我们做了2459个注释,发现了26种言语行为类型。我们的自动检测达到了69%的准确率和50%的召回率。这项工作的关键应用是推进虚拟助理在软件工程的艺术状态。虚拟助手技术发展迅速,但在软件工程中的应用却落后于其他领域,这主要是由于缺乏相关数据和实验。本文针对这个问题,在该地区的开发人员Q/A对话的错误修复。
2018-07-03 cs.CL cs.SE
Can We Enhance Bug Report Quality Using LLMs?: An Empirical Study of LLM-Based Bug Report Generation
University of Calgary(卡尔加里大学)
本文探讨利用指令微调LLM将非结构化缺陷报告自动转化为结构化报告,发现微调Qwen 2.5在CTQRS等指标上优于ChatGPT等模型,并能有效泛化至未见项目,显著降低开发人员手工成本。
2025-04-26 cs.AI cs.SE
Identifying Concurrency Bug Reports via Linguistic Patterns
University of Connecticut(康涅狄格大学);Stevens Institute of Technology(史蒂文斯理工学院)
本文提出基于语言模式的框架,通过微调预训练语言模型实现高精度识别并发Bug报告,提升分类自动化与可解释性。
2026-01-22 cs.SE
Checker Bug Detection and Repair in Deep Learning Libraries
该研究首次针对TensorFlow和PyTorch中的DL checker bug开展综合研究,分析其根因、症状与修复模式,并提出基于RAG和LLM的工具TensorGuard,实现高召回率的bug检测与更优的补丁生成效果,还在JAX库中发现了新bug。
2024-10-09 cs.SE
SWE-at-Scale: Scalable Issue Synthesis from Historical Bug Fixes
Shanghai Jiao Tong University(上海交通大学);North China Electric Power University(华北电力大学);Tsinghua University(清华大学);East China Normal University(华东师范大学);Shanghai Innovation Institute(上海创新研究所);Singapore Management University(新加坡管理大学)
研究针对现有SWE任务合成方法的不足,提出SWE-at-Scale框架,通过逆向工程历史Bug修复自动生成多样真实的SWE任务,实验显示其生成的任务更具挑战性且多样性可稳健扩展。
2026-10-16 cs.SE
A Benchmark of Data Loss Bugs for Android Apps
Android应用必须能够处理停止事件和启动事件,停止事件要求立即停止应用的执行而不丢失状态信息,启动事件要求在应用停止的同一点恢复应用的执行。对这类事件的支持必须由开发人员显式实现,不幸的是,开发人员经常无法实现用于保存和恢复应用程序状态的正确逻辑。因此,应用程序在移动到后台然后返回前台时可能会丢失数据(例如,以应答呼叫)或者当屏幕简单地旋转时。这些错误可能是恼人的可用性问题和意外崩溃的原因。本文介绍了Android应用程序中的110个数据丢失故障的公共基准,我们系统地收集了这些故障,以促进对这些问题的研究和实验。该基准测试可在GitLab上获得,包括错误的应用程序,修复的应用程序(可用时),自动重现问题的测试用例,以及可能有助于研究人员完成任务的其他信息。
2019-05-27 cs.SE
Coffee: Boost Your Code LLMs by Fixing Bugs with Feedback
Yonsei University(延世大学);Seoul National University(首尔大学)
本文提出 Coffee 数据集和 CoffeePots 框架,通过偏好优化调优与选择为开源代码大语言模型生成高质量修复反馈,在 HumanEvalFix 上取得最优性能。
2024-02-23 cs.CL cs.SE
LLM-Guided Issue Generation from Uncovered Code Segments
Concordia University(康考迪亚大学)
本文提出IssueSpecter工具,通过结合代码覆盖分析与大语言模型缺陷识别,生成优先级高的问题报告,验证其在Python项目中有效检测多种类型漏洞,且比传统方法在准确率和召回率上表现更优。
2026-04-28 cs.SE
Agentic Bug Reproduction for Effective Automated Program Repair at Google
University of Illinois Urbana-Champaign(伊利诺伊大学厄巴纳-香槟分校);Google(谷歌);TU Wien(维也纳技术大学)
本文提出BRT Agent,利用微调大语言模型从谷歌内部缺陷报告自动生成缺陷复现测试,显著优于LIBRO,并能有效提升自动化程序修复系统的修复效果。
2025-03-11 cs.AI cs.SE
To Type or Not to Type? A Systematic Comparison of the Software Quality of JavaScript and TypeScript Applications on GitHub
本研究通过挖掘604个GitHub项目对比JS与TS的软件质量,发现TS代码质量和可理解性更优,但缺陷倾向性更高、修复时间更长,减少any类型使用可优化多数质量指标。
2022-03-21 cs.SE