中文

Hawkeye:基于深度强化学习的Android应用变更定向测试

软件工程 2023-09-06 v1 机器学习

摘要

Android应用频繁更新以跟上变化的用户、硬件和业务需求。通过广泛测试确保应用更新的正确性对于避免潜在缺陷到达最终用户至关重要。现有的Android测试工具生成GUI事件时侧重于提高整个应用的测试覆盖率,而非优先处理更新及其受影响元素。近期研究提出了变更聚焦测试,但依赖随机探索来执行更新和受影响的GUI元素,对于具有巨大输入探索空间的大型复杂应用而言效率低下且缓慢。我们提出基于Hawkeye的应用更新定向测试,能够根据历史探索数据通过深度强化学习优先执行与代码变更关联的GUI操作。我们的实证评估将Hawkeye与最先进的基于模型和基于强化学习的测试工具FastBot2和ARES在10个流行开源和1个商业应用上进行比较。我们发现,对于开源应用和大型商业应用,Hawkeye比FastBot2和ARES更可靠地生成针对已变更函数的GUI事件序列。Hawkeye在探索空间更易处理的较小开源应用上取得相当的性能。Hawkeye在开发流水线中的工业部署也表明,其非常适合对复杂商业应用的合并请求执行冒烟测试。

关键词

引用

@article{arxiv.2309.01519,
  title  = {Hawkeye: Change-targeted Testing for Android Apps based on Deep Reinforcement Learning},
  author = {Chao Peng and Zhengwei Lv and Jiarong Fu and Jiayuan Liang and Zhao Zhang and Ajitha Rajan and Ping Yang},
  journal= {arXiv preprint arXiv:2309.01519},
  year   = {2023}
}