Enhancing GUI Exploration Coverage of Android Apps with Deep Link-Integrated Monkey
Han Hu, Han Wang, Ruiqi Dong, Xiao Chen, Chunyang Chen
TL;DR
This work tackles the persistent challenge of low GUI testing coverage in Android apps, caused by loops and hard-to-reach activities. It introduces Delm, a Deep Link-enhanced Monkey that couples static context mock-ups with dynamic ATG-guided exploration and deep-link binding to directly reach hidden activities. Through rigorous benchmarks (IntentBench, IndustrialApps, Themis) and real-world app datasets, Delm significantly improves activity coverage, method coverage, and crash detection over multiple baselines, while maintaining low false positives. The approach preserves Android contexts (ICC messages, device config, activity stack, global data) and uses deep links to trigger external entry points, achieving better coverage on complex apps and offering practical insights for robust Android GUI testing. The authors also provide open-source tooling and extensive ablation studies demonstrating the value of each component and discuss limitations and avenues for future improvement.
Abstract
Mobile apps are ubiquitous in our daily lives for supporting different tasks such as reading and chatting. Despite the availability of many GUI testing tools, app testers still struggle with low testing code coverage due to tools frequently getting stuck in loops or overlooking activities with concealed entries. This results in a significant amount of testing time being spent on redundant and repetitive exploration of a few GUI pages. To address this, we utilize Android's deep links, which assist in triggering Android intents to lead users to specific pages and introduce a deep link-enhanced exploration method. This approach, integrated into the testing tool Monkey, gives rise to Delm (Deep Link-enhanced Monkey). Delm oversees the dynamic exploration process, guiding the tool out of meaningless testing loops to unexplored GUI pages. We provide a rigorous activity context mock-up approach for triggering existing Android intents to discover more activities with hidden entrances. We conduct experiments to evaluate Delm's effectiveness on activity context mock-up, activity coverage, method coverage, and crash detection. The findings reveal that Delm can mock up more complex activity contexts and significantly outperform state-of-the-art baselines with 27.2\% activity coverage, 21.13\% method coverage, and 23.81\% crash detection.
