DinoDroid:使用深度Q网络测试Android应用
软件工程
2022-10-13 v1
摘要
移动设备的巨大需求引发了对移动应用(apps)质量的显著担忧。开发者需要在应用发布到市场之前保证其质量。已有许多采用不同策略测试移动应用GUI的方法。然而,由于其有限的有效性,它们仍有改进空间。在本文中,我们提出DinoDroid,一种基于深度Q网络自动化测试Android应用的方法。DinoDroid从一组现有应用中学习行为模型,该学习到的模型可用于探索并为新应用生成测试。DinoDroid能够捕获GUI事件(例如GUI部件的内容)的细粒度细节,并将其作为特征输入深度神经网络,该网络充当智能体以引导应用探索。DinoDroid在探索过程中自动适应学习到的模型,无需任何建模策略或预定义规则。我们在64个开源Android应用上进行实验。结果表明,DinoDroid在代码覆盖率和缺陷检测方面优于现有Android测试工具。
引用
@article{arxiv.2210.06307,
title = {DinoDroid: Testing Android Apps Using Deep Q-Networks},
author = {Yu Zhao and Brent Harrison and Tingting Yu},
journal= {arXiv preprint arXiv:2210.06307},
year = {2022}
}