paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Automatically Reproducing Android Bug Reports using Natural Language Processing and Reinforcement Learning

使用自然语言处理与强化学习自动复现 Android 缺陷报告
ISSTA Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis2023匹配度 2/10 · 论文将NLP与强化学习用于Android缺陷报告复现,属于机器学习辅助软件测试/调试,但既不涉及静态分析,也不涉及LLM/Agent、浮点程序分析或贝叶斯程序分析,与用户研究画像的核心方向距离较远。引用 23 inbox
Zhaoxu Zhang, Robert Winn, Yu Zhao, Tingting Yu, William G.J. Halfond
crossref: 2026-09-12dblp: 2026-09-12arxiv: 2026-09-12

AI 速览

一句话:提出结合NLP与强化学习的全自动方法,从Android缺陷报告中提取并搜索复现步骤,显著提升崩溃复现率。

Android开发者需要复现缺陷报告中描述的崩溃以解决问题,但报告质量低、应用复杂,使自动复现十分困难;现有方法仅能处理有限形式的自然语言,且难以应对缺失或不精确步骤的报告。本文提出一种全自动复现方法:利用自然语言处理技术更整体、准确地分析Android缺陷报告文本,并基于强化学习设计新搜索技术来引导寻找成功的复现步骤。在77个真实缺陷报告上的实证评估表明,该方法提取复现步骤的精确率为67%、召回率为77%,成功复现74%的缺陷报告,并在包含缺失步骤的报告上复现64%,显著优于当前最优技术。

问题
Android缺陷报告中的崩溃复现过程耗时且困难,现有自动方法仅能处理有限形式的自然语言,对步骤缺失或不精确的报告复现效果差。
方法
使用自然语言处理技术更整体、准确地分析缺陷报告文本,并基于强化学习设计搜索技术来引导寻找成功复现崩溃的步骤。
评估
在77个真实Android缺陷报告上进行实证评估,与当前最优技术对比,报告复现步骤提取的精确率、召回率以及缺陷报告复现率。
原文摘要(Abstract)

As part of the process of resolving issues submitted by users via bug reports, Android developers attempt to reproduce and observe the crashes described by the bug reports. Due to the low-quality of bug reports and the complexity of modern apps, the reproduction process is non-trivial and time-consuming. Therefore, automatic approaches that can help reproduce Android bug reports are in great need. However, current approaches to help developers automatically reproduce bug reports are only able to handle limited forms of natural language text and struggle to successfully reproduce crashes for which the initial bug report had missing or imprecise steps. In this paper, we introduce a new fully automated approach to reproduce crashes from Android bug reports that addresses these limitations. Our approach accomplishes this by leveraging natural language processing techniques to more holistically and accurately analyze the natural language in Android bug reports and designing new techniques, based on reinforcement learning, to guide the search for successful reproducing steps. We conducted an empirical evaluation of our approach on 77 real world bug reports. Our approach achieved 67% precision and 77% recall in accurately extracting reproduction steps from bug reports, reproduced 74% of the total bug reports, and reproduced 64% of the bug reports that contained missing steps, significantly outperforming state of the art techniques.

链接与引用

DOI 原文 · arXiv · PDF(开放获取) · DBLP

BibTeX
@inproceedings{abs-2301-07775,
  title = {Automatically Reproducing Android Bug Reports using Natural Language Processing and Reinforcement Learning},
  author = {Zhaoxu Zhang and Robert Winn and Yu Zhao and Tingting Yu and William G.J. Halfond},
  booktitle = {ISSTA},
  year = {2023},
  doi = {10.1145/3597926.3598066}
}