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


연구 분야: Artificial Intelligence



학회: ISSTA 2023: Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis


초록

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.


Author Profile
Zhaoxu Zhang

University of Southern California USA

United States
Author Profile
Robert Winn

University of Southern California USA

United States
Author Profile
Yu Zhao

University of Central Missouri USA

United States

📄 논문 정보

발행 연도 2023년
인용수 10
출판 국가 United States
사이트 ACM
좋아요 수 0

연관 논문 목록 (15건)