Automatically Reproducing Android Bug Reports Using Natural Language Processing and Reinforcement Learning

01/18/2023
by   Zhaoxu Zhang, et al.
0

As part of the process of resolving issues submitted by users via bug reports, Android developers attempt to reproduce and observe the failures described by the bug report. 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 failures for which the initial bug report had missing or imprecise steps. In this paper, we introduce a new fully automated Android bug report reproduction approach that addresses these limitations. Our approach accomplishes this by leveraging natural language process 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 extracting reproduction steps from bug reports, and reproduced 74 reports, significantly outperforming state of the art techniques.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/03/2023

An Empirical Investigation into the Reproduction of Bug Reports for Android Apps

One of the key tasks related to ensuring mobile app quality is the repor...
research
06/17/2019

Assessing the Quality of the Steps to Reproduce in Bug Reports

A major problem with user-written bug reports, indicated by developers a...
research
06/03/2023

Prompting Is All Your Need: Automated Android Bug Replay with Large Language Models

Bug reports are vital for software maintenance that allow users to infor...
research
09/23/2022

Large Language Models are Few-shot Testers: Exploring LLM-based General Bug Reproduction

Many automated test generation techniques have been developed to aid dev...
research
09/28/2021

What to Prioritize? Natural Language Processing for the Development of a Modern Bug Tracking Solution in Hardware Development

Managing large numbers of incoming bug reports and finding the most crit...
research
08/11/2021

The Forgotten Role of Search Queries in IR-based Bug Localization: An Empirical Study

Being light-weight and cost-effective, IR-based approaches for bug local...
research
12/08/2021

GIFdroid: Automated Replay of Visual Bug Reports for Android Apps

Bug reports are vital for software maintenance that allow users to infor...

Please sign up or login with your details

Forgot password? Click here to reset