APEX: Automatic Event Sequence Generation for Android Applications

📅 2025-09-02
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
Android GUI event sequence generation faces dual challenges: low coverage and difficulty reaching target paths. Traditional model-driven approaches effectively cover GUI states but struggle to generate inputs satisfying complex data dependencies. This paper proposes a synergistic analysis framework integrating concolic execution with GUI modeling—the first to jointly leverage concolic execution for both event sequence construction and GUI traversal guidance. By employing dynamic symbolic execution to identify path constraints, and combining it with a GUI model for event prioritization and data-dependency–aware state transition analysis, the framework systematically explores GUI navigation paths. Experimental evaluation demonstrates significant improvements in code coverage and target-path reachability across multiple benchmark applications, outperforming state-of-the-art model-driven tools (e.g., A3E, DroidBot). The results validate the framework’s advantages in robustness, precision, and systematic GUI exploration.

Technology Category

Application Category

📝 Abstract
Due to the event driven nature and the versatility of GUI designs in Android programs, it is challenging to generate event sequences with adequate code coverage within a reasonable time. A common approach to handle this issue is to rely on GUI models to generate event sequences. These sequences can be effective in covering GUI states, but inconsistent in exposing program behaviors that require specific inputs. A major obstacle to generate such specific inputs is the lack of a systematic GUI exploration process to accommodate the analysis requirements. In this paper, we introduce Android Path Explorer (APEX), a systematic input generation framework using concolic execution. APEX addresses the limitations of model-based sequence generation by using concolic execution to discover the data dependencies of GUI state transitions. Moreover, concolic execution is also used to prioritize events during the exploration of GUI, which leads to a more robust model and accurate input generation. The key novelty of APEX is that concolic execution is not only used to construct event sequences, but also used to traverse the GUI more systematically. As such, our experimental results show that APEX can be used to generate a set of event sequences that achieve high code coverage, as well as event sequences that reach specific targets.
Problem

Research questions and friction points this paper is trying to address.

Generating event sequences for high Android code coverage
Addressing limitations of model-based GUI testing approaches
Systematically exploring GUI states with concolic execution
Innovation

Methods, ideas, or system contributions that make the work stand out.

Concolic execution for GUI state dependencies
Prioritizing events during GUI exploration
Systematic traversal for high code coverage
🔎 Similar Papers
No similar papers found.