一句话:提出 Humanoid,用从人类交互轨迹学习的深度神经网络指导黑盒 Android UI 测试输入生成,以提高覆盖率。
黑盒 Android 应用自动化测试中,输入生成器需要在有限时间预算内不断选择要交互的 UI 元素及交互方式,以尽可能提高覆盖率。现有方法多采用伪随机或暴力搜索,往往需要很长时间才能找到可推动应用进入新重要状态的输入组合。Humanoid 提出用深度学习解决该问题:它从人类用户与应用的交互轨迹中学习一个深度神经网络模型,依据应用 GUI 预测人类用户会选择何种动作,再用该模型指导测试输入生成。在开源应用和应用市场应用上的实验表明,Humanoid 能达到比当前最先进的测试输入生成器更高的覆盖率,并且速度更快。该工具已开源并提供了演示视频。
Automated input generators must constantly choose which UI element to interact with and how to interact with it, in order to achieve high coverage with a limited time budget. Currently, most black-box input generators adopt pseudo-random or brute-force searching strategies, which may take very long to find the correct combination of inputs that can drive the app into new and important states. We propose Humanoid, an automated black-box Android app testing tool based on deep learning. The key technique behind Humanoid is a deep neural network model that can learn how human users choose actions based on an app's GUI from human interaction traces. The learned model can then be used to guide test input generation to achieve higher coverage. Experiments on both open-source apps and market apps demonstrate that Humanoid is able to reach higher coverage, and faster as well, than the state-of-the-art test input generators. Humanoid is open-sourced at https://github.com/yzygitzh/Humanoid and a demo video can be found at https://youtu.be/PDRxDrkyORs.
DOI 原文 ·
@inproceedings{paperbot5276,
title = {Humanoid: A Deep Learning-Based Approach to Automated Black-box Android App Testing},
author = {Yuanchun Li and Ziyue Yang and Yao Guo and Xiangqun Chen},
booktitle = {ASE},
year = {2019},
doi = {10.1109/ase.2019.00104}
}