一句话:提出网络感知测试增强器 NATE,用好奇心驱动强化学习注入网络事件,提升 Android 应用网络相关故障检测。
网络相关故障(NRF)在依赖网络服务的 Android 应用中日益普遍,触发依赖复杂网络模式,现有通用测试方法缺乏针对性网络事件与高效注入机制。论文首次对 42 个真实应用的 154 个网络相关缺陷开展实证研究,分析其特征、影响、触发模式与来源。基于此提出 NATE:利用好奇心驱动强化学习提供网络感知引导并注入有效网络事件,增强现有 Android 测试方法以检测 NRF。在 12 个大型活跃应用上集成两种先进测试方法后,检测故障数提升 1.7–5.7 倍,代码覆盖率分别提高 8.8% 和 12.5%;21 个检测到的 NRF 被开发者确认为真实缺陷,16 个由 NATE 首次报告,原方法均未检测到。
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.
DOI 原文 ·
@inproceedings{paperbot9235,
title = {NATE: A Network-Aware Testing Enhancer for Network-Related Fault Detection in Android Apps},
author = {Yuanhong Lan and Shaoheng Cao and Yifei Lu and Minxue Pan and Xuandong Li},
booktitle = {ASE},
year = {2025},
doi = {10.1109/ase63991.2025.00118}
}