Towards Effective Bug Reproduction for Mobile Applications

Xin Yan Li, Shengcheng Yu, Lifan Sun, Yuexiao Liu, Chunrong Fang · 2023

Bug reproduction is a critical task in software testing, as it helps developers to identify and fix bugs in the software. While some automated reproduction tools are designed to assist developers in reproducing bugs detected by automated testing tools, they are not entirely reliable. Thus, manual reproduction remains important. However, automated testing tools often generate testing results that are difficult for non-professional developers to understand, which complicates their efforts to reproduce bugs. In this paper, we propose RepAssistor, an approach that employs an interactive method to assist developers in reproducing bugs based on automated testing logs. RepAssistor is designed for reproducing bugs in mobile applications. It leverages deep learning (DL) and traditional computer vision (CV) techniques to analyze application screenshots, transforming automated testing logs into a graph representation. In this graph, edges represent test events while nodes represent application states. With this graph representation in place, RepAssistor is then able to monitor developers’ actions and continuously track which node they are at in this graph in real-time. Based on this understanding, RepAssistor dynamically calculates and updates the optimal path to guide developers to reproduce bugs. This guidance is conveyed to the developers through an interactive method, enabling effective communication and assistance throughout the bug reproduction process. Our experiments demonstrate that RepAssistor improves the performance of developers in bug reproduction tasks.

Read the paper · More papers on PaperTik