This approach improves code coverage in Android apps, indicating a more reliable automated testing method.
With the growing global popularity of Android apps, ensuring their quality and reliability has become increasingly important, as low-quality apps can lead to poor user experiences and potential business losses. A common approach to testing Android apps involves automatically generating event sequences that interact with the app’s graphical user interface (GUI) to detect crashes. To support this, we developed ACE (Android Crawler), a tool that systematically generates events to test Android apps by automatically exploring their GUIs. However, ACE’s original heuristic-driven exploration can be inefficient in complex application states. To address this, we extend ACE with a deep reinforcement learning-based crawling strategy, called Reinforcement Learning Strategy (RLS), which tightly integrates with ACE’s GUI exploration process by learning to intelligently select GUI components and interaction actions. RLS leverages the Proximal Policy Optimization (PPO) algorithm for stable and efficient learning and incorporates an action mask to filter invalid actions, thereby reducing training time. We evaluate RLS on 15 real-world Android apps and compare its performance against the original ACE and three state-of-the-art Android testing tools. Results show that RLS improves code coverage by an average of 2.1% over ACE’s Nearest unvisited event First Search (NFS) strategy and outperforms all three baseline tools in terms of code coverage. Paired t-test analyses further confirm that these improvements are statistically significant, demonstrating its effectiveness in enhancing automated Android GUI testing.
No takes yet. Share an insight, caveat, or question.
Liu et al. (2026) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: