paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Reinforcement learning based curiosity-driven testing of Android applications

基于强化学习的好奇心驱动 Android 应用测试
ISSTA Proceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis2020匹配度 1/10 · 该论文研究Android GUI自动化测试与好奇心驱动强化学习,属于软件测试/ML for SE方向,不涉及静态分析、LLM/Agent、浮点程序分析或贝叶斯程序分析,与用户研究画像核心方向基本无关。引用 174 inbox
Minxue Pan, An Huang, Guoxin Wang, Tian Zhang, Xuandong Li
crossref: 2026-09-12

AI 速览

一句话:提出 Q-testing,用好奇心驱动的强化学习结合记忆集与神经网络状态比较模块,提升 Android GUI 测试的覆盖率与缺陷检测能力。

Android GUI 测试中,基于模型和系统化的方法因模型不精确、可扩展性差等局限,未能显著优于随机方法。本文提出 Q-testing,一种兼取随机方法与基于模型方法之长的强化学习自动化测试方法。Q-testing 采用好奇心驱动策略探索 Android 应用:用记忆集记录部分已访问状态,引导测试走向不熟悉的功能;并新颖地引入状态比较模块——一个由大量收集样本训练的神经网络——在功能场景粒度上区分不同状态,从而确定强化学习奖励并帮助好奇心策略高效探索不同功能。作者在 50 个开源应用上开展实验,Q-testing 在代码覆盖率和缺陷检测方面均优于最先进及业界实践的 Android GUI 测试工具;目前报告的缺陷中有 22 个已获确认,其中 7 个已修复。

问题
Android GUI 自动化测试中,基于模型的方法受模型不精确和可扩展性差所限,难以显著优于随机方法,如何在功能层面高效探索并发现缺陷仍具挑战。
方法
提出 Q-testing,以好奇心驱动的强化学习策略探索应用,利用记忆集记录部分已访问状态,并训练神经网络构成状态比较模块,在功能场景粒度上区分状态以确定奖励、引导探索。
评估
在 50 个开源 Android 应用上与最先进和业界实践的 GUI 测试工具对比,以代码覆盖率和缺陷检测为指标,并统计所报告缺陷的确认与修复情况。
原文摘要(Abstract)

Mobile applications play an important role in our daily life, while it still remains a challenge to guarantee their correctness. Model-based and systematic approaches have been applied to Android GUI testing. However, they do not show significant advantages over random approaches because of limitations such as imprecise models and poor scalability. In this paper, we propose Q-testing, a reinforcement learning based approach which benefits from both random and model-based approaches to automated testing of Android applications. Q-testing explores the Android apps with a curiosity-driven strategy that utilizes a memory set to record part of previously visited states and guides the testing towards unfamiliar functionalities. A state comparison module, which is a neural network trained by plenty of collected samples, is novelly employed to divide different states at the granularity of functional scenarios. It can determine the reinforcement learning reward in Q-testing and help the curiosity-driven strategy explore different functionalities efficiently. We conduct experiments on 50 open-source applications where Q-testing outperforms the state-of-the-art and state-of-practice Android GUI testing tools in terms of code coverage and fault detection. So far, 22 of our reported faults have been confirmed, among which 7 have been fixed.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot6065,
  title = {Reinforcement learning based curiosity-driven testing of Android applications},
  author = {Minxue Pan and An Huang and Guoxin Wang and Tian Zhang and Xuandong Li},
  booktitle = {ISSTA},
  year = {2020},
  doi = {10.1145/3395363.3397354}
}