Automata-Based Trace Analysis for Aiding Diagnosing GUI Testing Tools for Android
Enze Ma, Shan Huang, Weigang He, Ting Su, Jue Wang, Huiyu Liu, Geguang Pu, Zhendong Su
Abstract
Benchmarking software testing tools against known bugs is a classic approach to evaluating the tools' bug finding abilities. However, this approach is difficult to give some clues on the tool-missed bugs to aid diagnosing the testing tools. As a result, heavy and ad hoc manual analysis is needed. In this work, in the setting of GUI testing for Android apps, we introduce an automata-based trace analysis approach to tackling the key challenge of manual analysis, i.e., how to analyze the lengthy event traces generated by a testing tool against a missed bug to find the clues. Our key idea is that, we model a bug in the form of a finite automaton which captures its bug-triggering traces; and match the event traces generated by the testing tool (which misses this bug) against this automaton to obtain the clues. Specifically, the clues are presented in the form of three designated automata-based coverage values. We apply our approach to enhance Themis, a representative benchmark suite for Android, to aid diagnosing GUI testing tools. Our extensive evaluation on nine state-of-the-art GUI testing tools and the involvement with several tool developers shows that our approach is feasible and useful. Our approach enables Themis + (the enhanced benchmark suite) to provide the clues on the tool-missed bugs, and all the Themis + 's clues are identical or useful, compared to the manual analysis results of tool developers. Moreover, the clues have helped find several tool weaknesses, which were unknown or unclear before. Based on the clues, two actively-developing industrial testing tools in our study have quickly made several optimizations and demonstrated their improved bug finding abilities. All the tool developers give positive feedback on the usefulness and usability of Themis + 's clues. Themis + is available at https:// github.com/ DDroid-Android/ home.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 24b52399-9db2-4ac3-b4b1-f83c4f17e071Cited by top-tier papers1
Ask how each one uses itBuilds on10
- Evaluating Fuzz TestingGeorge Klees, Andrew Ruef, Benji Cooper, Shiyi Wei et al.CCS 2018 · 753 citations
- LAVA: Large-Scale Automated Vulnerability AdditionBrendan Dolan-Gavitt, Patrick Hulin, Engin Kirda, Tim Leek et al.S&P 2016 · 354 citations
- Reinforcement learning based curiosity-driven testing of Android applicationsMinxue Pan, An Huang, Guoxin Wang, Tian Zhang et al.ISSTA 2020 · 166 citations
- Time-travel testing of Android appsZhen Dong, Marcel Böhme, Lucia Cojocaru, Abhik RoychoudhuryICSE 2020 · 104 citations
- Benchmarking automated GUI testing for Android against real-world bugsTing Su, Jue Wang, Zhendong SuFSE 2021 · 77 citations
Related papers
- From Suspicious Signals to Crashes: Guiding Bug-Driven GUI Testing via Code-Inspired TracingMengzhuo Chen, Zhe Liu, Chunyang Chen, Junjie Wang et al.FSE 2026
- Context-aware Bug Reproduction for Mobile AppsYuchao Huang, Junjie Wang, Zhe Liu, Song Wang et al.ICSE 2023 · 7 citations
- Mobile Application Coverage: The 30% Curse and Ways ForwardFaridah Akinotcho, Lili Wei, Julia RubinICSE 2025 · 3 citations
- Detecting non-crashing functional bugs in Android apps via deep-state differential analysisJue Wang, Yanyan Jiang, Ting Su, Shaohua Li et al.FSE 2022 · 26 citations
- Fully automated functional fuzzing of Android apps for detecting non-crashing logic bugsTing Su, Yichen Yan, Jue Wang, Jingling Sun et al.OOPSLA 2021 · 58 citations
