跳到主要导航 跳到搜索 跳到主要内容

Improving Automated GUI Exploration of Android Apps via Static Dependency Analysis

  • Wunan Guo
  • , Liwei Shen
  • , Ting Su
  • , Xin Peng
  • , Weiyang Xie
  • Fudan University

科研成果: 书/报告/会议事项章节会议稿件同行评审

摘要

Exploring GUIs of Android apps plays a key role in many important scenarios such as functional testing (e.g., finding crash errors), security analysis (e.g., identifying malicious behav-iors) and competitive analysis (e.g., storyboarding app features). To automate GUI exploration, existing techniques often try to visit as many GUI pages as possible via specific strategies, e.g., random (like Monkey) or heuristic (like Stoat, A3E). However, their effectiveness is still unclear and much under-explored. To this end, we conducted the first study in this paper to understand and characterize their limitations by carefully analyzing the coverage reports from a set of real-world, open-source apps. Through this study, we identified three key limitations due to the lack of dependency knowledge during exploration, i.e., widget-page dependency, widget-widget dependency and system-event dependency. To overcome them, we introduce dependency-informed exploration, an automated approach that leverages static dependency analysis to effectively improve GUI exploration performance. Given an app, our approach first constructs a GUI page transition model that captures the dependencies between GUI widgets, and then guides GUI exploration during a depth-first traversal. We realized our approach as a tool named Gesda, and evaluated it on 70 open-source Android apps. The results show Gesda outperforms existing state-of-the-art GUI exploration techniques, i.e., Monkey and Stoat. Additionally, Gesda uncovers 4 previously unknown crashes in 4 apps as a by-product of GUI exploration due to the benefit of dependency knowledge, while Monkey and Stoat have not discovered them.

源语言英语
主期刊名Proceedings - 2020 IEEE International Conference on Software Maintenance and Evolution, ICSME 2020
出版商Institute of Electrical and Electronics Engineers Inc.
557-568
页数12
ISBN(电子版)9781728156194
DOI
出版状态已出版 - 9月 2020
活动36th IEEE International Conference on Software Maintenance and Evolution, ICSME 2020 - Virtual, Adelaide, 澳大利亚
期限: 27 9月 20203 10月 2020

出版系列

姓名Proceedings - 2020 IEEE International Conference on Software Maintenance and Evolution, ICSME 2020

会议

会议36th IEEE International Conference on Software Maintenance and Evolution, ICSME 2020
国家/地区澳大利亚
Virtual, Adelaide
时期27/09/203/10/20

指纹

探究 'Improving Automated GUI Exploration of Android Apps via Static Dependency Analysis' 的科研主题。它们共同构成独一无二的指纹。

引用此