Vision-Based Mobile App GUI Testing: A Survey

Shengcheng Yu,Chunrong Fang,Ziyuan Tuo,Quanjun Zhang,Chunyang Chen,Zhenyu Chen,Zhendong Su
2024-10-23
Abstract:Graphical User Interface (GUI) has become one of the most significant parts of mobile applications (apps). It is a direct bridge between mobile apps and end users, which directly affects the end user's experience. Neglecting GUI quality can undermine the value and effectiveness of the entire mobile app solution. Significant research efforts have been devoted to GUI testing, one effective method to ensure mobile app quality. By conducting rigorous GUI testing, developers can ensure that the visual and interactive elements of the mobile apps not only meet functional requirements but also provide a seamless and user-friendly experience. However, traditional solutions, relying on the source code or layout files, have met challenges in both effectiveness and efficiency due to the gap between what is obtained and what app GUI actually presents. Vision-based mobile app GUI testing approaches emerged with the development of computer vision technologies and have achieved promising progress. In this survey paper, we provide a comprehensive investigation of the state-of-the-art techniques on 271 papers, among which 92 are vision-based studies. This survey covers different topics of GUI testing, like GUI test generation, GUI test record & replay, GUI testing framework, etc. Specifically, the research emphasis of this survey is placed mostly on how vision-based techniques outperform traditional solutions and have gradually taken a vital place in the GUI testing field. Based on the investigation of existing studies, we outline the challenges and opportunities of (vision-based) mobile app GUI testing and propose promising research directions with the combination of emerging techniques.
Software Engineering
What problem does this paper attempt to address?
### Problems the Paper Attempts to Solve This paper primarily focuses on the challenges in testing the graphical user interface (GUI) of mobile applications (Apps) and explores how visual-based methods can address these issues. Specifically, the paper attempts to solve the following problems: 1. **Limitations of Traditional GUI Testing Methods**: - **Environment Fragmentation Issue**: Due to the fragmented nature of mobile platforms, GUI testing in different environments requires adaptation to different implementations or underlying system support, posing significant challenges to traditional methods. - **Inaccurate GUI Element Detection**: Traditional techniques detect GUI elements by obtaining the runtime layout structure of the application, but some elements may be missing in the layout file, such as buttons and text boxes within Canvas components. - **Inaccurate User Operation Simulation**: Inaccurate recognition of GUI elements leads to the inability to faithfully simulate user operations. 2. **Advantages of Visual Methods**: - **Cross-Environment Generality**: Developers usually design highly similar GUI content and layouts in different environments, facilitating general analysis and understanding based on visual methods. - **Direct Analysis of GUI Screenshots**: By directly analyzing the GUI screenshots of the application, it is possible to more accurately detect and understand GUI elements, similar to the perspective of human testers. - **Improved Accuracy of User Operation Simulation**: Visual-based GUI element detection can more precisely simulate user operations. 3. **Shortcomings of Existing Research**: - **Lack of Systematic Review of Visual Methods**: Although many studies focus on GUI testing of mobile Apps, few reviews specifically discuss visual-based methods. - **Uneven Development in Research Fields**: Some areas of research are relatively underdeveloped, such as GUI test report analysis and GUI test script maintenance. ### Main Contributions of the Paper 1. **First Systematic Review of Visual-Based Mobile App GUI Testing Techniques**: Fills the current research gap and provides a comprehensive and in-depth understanding of the development in this field. 2. **Detailed Analysis and Summary of Existing Research**: Covers eight main research topics, including GUI test generation, recording and playback, test frameworks, test script maintenance, test report analysis, GUI element detection, usability and accessibility testing, and test evaluation criteria. 3. **Highlighting the Unique Advantages of Visual Methods**: Demonstrates the unique advantages of visual methods in improving testing effectiveness and efficiency through comparison with non-visual methods. 4. **Proposing Future Research Directions**: Combines emerging technologies to propose potential future research directions, providing valuable references for researchers and practitioners. Through these efforts, the paper aims to provide new perspectives and ideas for the development of the mobile App GUI testing field, promoting further research and application in this area.