Characterizing and Repairing Obsolete Android GUI Tests under UI Evolution
Shiwen Song, Yiheng Xiong, Wenbo Guo, Manqi Sun, Jiaolong Kong, Xiaofei Xie
Abstract
Graphical user interface (GUI) tests are widely used in regression testing of mobile applications (apps) to validate app behavior from the user's perspective. However, frequent app evolution, such as UI redesigns and feature updates, often renders existing GUI tests obsolete, even when underlying functionality remains unchanged. Automatically repairing such tests is critical for maintaining test suites and reducing substantial manual effort. Despite the practical importance, there is still a lack of a systematic understanding of the characteristics of obsolete GUI tests and a publicly available benchmark to support their study. To fill this gap, we construct a benchmark comprising 736 obsolete GUI tests collected from 36 real-world mobile apps across 668 historical versions. We then conduct a large-scale empirical study that reveals two major challenges in repairing obsolete GUI tests: First, identifying the intended target widget is difficult because widget attributes are frequently missing or unstable, and visually similar widgets may correspond to different functionalities. Second, the target widget is often no longer directly reachable from the failure state, as it may be hidden behind additional UI interactions or relocated to another page. To address these challenges, we further propose GUIRevive, an automated GUI test repair approach that addresses semantic ambiguity in widget identification and target unreachability under UI evolution by integrating semantic-aware reasoning, functionality-preserving validation, and goal-guided UI exploration. Our evaluation shows that GUIRevive successfully repairs 86.4% of obsolete GUI tests and significantly outperforms state-of-the-art repair techniques by up to 220%. Moreover, GUIRevive has been deployed in industrial settings, achieving a 93% repair success rate on industrial mobile apps.
Ask about this paper
Ask your agent about it.
Lune has read the top-tier papers around this one, so every answer names the papers it rests on.
Your agent calls
Lunesearch_papers
Free to start. No credit card required.
Terminal
Install the CLIlune papers get 7b64710c-b9fc-4845-bf5d-f8d3234dfd31Related papers
- GUIDER: GUI structure and vision co-guided test script repair for Android appsTongtong Xu, Minxue Pan, Yu Pei, Guiyin Li et al.ISSTA 2021 · 30 citations
- Comprehensive Semantic Repair of Obsolete GUI Test Scripts for Mobile ApplicationsShaoheng Cao, Minxue Pan, Yu Pei, Wenhua Yang et al.ICSE 2024 · 7 citations
- Automated Fixing of Web UI Tests via Iterative Element MatchingYuanzhang Lin, Guoyao Wen, Xiang GaoASE 2023 · 8 citations
- Vision-Based Widget Mapping for Test Migration Across Mobile Platforms: Are We There Yet?Ruihua Ji, Tingwei Zhu, Xiaoqing Zhu, Chunyang Chen et al.ASE 2023 · 2 citations
- Semantic matching of GUI events for test reuse: are we there yet?Leonardo Mariani, Ali Mohebbi, Mauro Pezzè, Valerio TerragniISSTA 2021 · 34 citations
