NATE: A Network-Aware Testing Enhancer for Network-Related Fault Detection in Android Apps
Yuanhong Lan, Shaoheng Cao, Yifei Lu, Minxue Pan, Xuandong Li
Abstract
As Android apps become increasingly dependent on network services, Network-Related Faults (NRFs) are gradually more prevalent and severely degrade user experience. These faults are typically scattered across apps and require complex, often non-trivial network patterns to trigger, which makes their detection challenging. To date, we still lack a general and in-depth understanding of NRFs in real-world Android apps. To fill this gap, we conduct the first empirical study on 154 real-world network-related bugs collected from 42 diverse, representative Android apps, investigating their characteristics, influences, triggering patterns, and origins. Our study reveals several notable findings and practical implications to guide future research on detecting and mitigating NRFs. Motivated by the empirical results and the limitations of existing Android testing approaches—namely, the lack of targeted network events and efficient injection mechanisms—we propose NATE, a novel Network-Aware Testing Enhancer that augments existing general Android testing approaches for NRF detection. NATE leverages curiosity-driven reinforcement learning to provide network-aware guidance and to inject effective network events, enabling testing approaches to explore network-related extra app functionalities and detect NRFs. When integrated with two state-of-the-art general Android testing approaches, experiments conducted on 12 large, active apps demonstrate the effectiveness and efficiency of NATE, with 1.7-5.7× as many faults detected, as well as 8.8% and 12.5% more code covered. Among the network-related faults detected by NATE, 21 have been explicitly confirmed as real-world bugs by the developers (six of which have already been fixed), where 16 of them were first reported by NATE. Notably, none of the 21 bugs were detected by the original general testing approaches, demonstrating the unique contributions of NATE.
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 a837f72e-3f17-4147-a2a0-19477b223080Related papers
- Deeply Reinforcing Android GUI Testing with Deep Reinforcement LearningYuanhong Lan, Yifei Lu, Zhong Li, Minxue Pan et al.ICSE 2024 · 21 citations
- Reinforcement learning based curiosity-driven testing of Android applicationsMinxue Pan, An Huang, Guoxin Wang, Tian Zhang et al.ISSTA 2020 · 166 citations
- Automatically Reproducing Android Bug Reports using Natural Language Processing and Reinforcement LearningZhaoxu Zhang, Robert Winn, Yu Zhao, Tingting Yu et al.ISSTA 2023 · 14 citations
- An Empirical Study of Functional Bugs in Android AppsYiheng Xiong, Mengqian Xu, Ting Su, Jingling Sun et al.ISSTA 2023 · 40 citations
- NASS: Fuzzing All Native Android System Services with Interface Awareness and CoveragePhilipp Mao, Marcel Busch, Mathias PayerUSENIX Security 2025
