Guided, Stochastic Model-Based GUI Testing of Android Apps

被引:229
|
作者
Su, Ting [1 ,2 ]
Meng, Guozhu [2 ]
Chen, Yuting [3 ]
Wu, Ke [1 ]
Yang, Weiming [1 ]
Yao, Yao [1 ]
Pu, Geguang [1 ]
Liu, Yang [2 ]
Su, Zhendong [4 ]
机构
[1] East China Normal Univ, Sch Comp Sci & Software Engn, Shanghai, Peoples R China
[2] Nanyang Technol Univ, Sch Comp Engn, Singapore, Singapore
[3] Shanghai Jiao Tong Univ, Dept Comp Sci & Engn, Shanghai, Peoples R China
[4] Univ Calif Davis, Dept Comp Sci, Davis, CA 95616 USA
关键词
Mobile Apps; GUI Testing; Model-based Testing;
D O I
10.1145/3106237.3106298
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Mobile apps are ubiquitous, operate in complex environments and are developed under the time-to-market pressure. Ensuring their correctness and reliability thus becomes an important challenge. This paper introduces Stoat, a novel guided approach to perform stochastic model-based testing on Android apps. Stoat operates in two phases: (1) Given an app as input, it uses dynamic analysis enhanced by a weighted UI exploration strategy and static analysis to reverse engineer a stochastic model of the app's GUI interactions; and (2) it adapts Gibbs sampling to iteratively mutate/refine the stochastic model and guides test generation from the mutated models toward achieving high code and model coverage and exhibiting diverse sequences. During testing, system-level events are randomly injected to further enhance the testing effectiveness. Stoat was evaluated on 93 open-source apps. The results show (1) the models produced by Stoat cover 17 similar to 31% more code than those by existing modeling tools; (2) Stoat detects 3X more unique crashes than two state-of-the-art testing tools, Monkey and Sapienz. Furthermore, Stoat tested 1661 most popular Google Play apps, and detected 2110 previously unknown and unique crashes. So far, 43 developers have responded that they are investigating our reports. 20 of reported crashes have been confirmed, and 8 already fixed.
引用
收藏
页码:245 / 256
页数:12
相关论文
共 50 条
  • [1] CrawlDroid: Effective Model-based GUI Testing of Android Apps
    Cao, Yuzhong
    Wu, Guoquan
    Chen, Wei
    Wei, Jun
    [J]. INTERNETWARE'18: PROCEEDINGS OF THE TENTH ASIA-PACIFIC SYMPOSIUM ON INTERNETWARE, 2018,
  • [2] FSMdroid: Guided GUI Testing of Android Apps
    Su, Ting
    [J]. 2016 IEEE/ACM 38TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C), 2016, : 689 - 691
  • [3] Guided GUI Testing of Android Apps with Minimal Restart and Approximate Learning
    Choi, Wontae
    Necula, George
    Sen, Koushik
    [J]. ACM SIGPLAN NOTICES, 2013, 48 (10) : 623 - 639
  • [4] VITAS : Guided Model-based VUI Testing of VPA Apps
    Li, Suwan
    Bu, Lei
    Bai, Guangdong
    Guo, Zhixiu
    Chen, Kai
    Wei, Hanlin
    [J]. PROCEEDINGS OF THE 37TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE 2022, 2022,
  • [5] Automated Model-Based Android GUI Testing using Multi-level GUI Comparison Criteria
    Baek, Young-Min
    Bae, Doo-Hwan
    [J]. 2016 31ST IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE), 2016, : 238 - 249
  • [6] Model-based testing through a GUI
    Kervinen, Antti
    Maunumaa, Mika
    Paakkonen, Tuula
    Katara, Mika
    [J]. FORMAL APPROACHES TO SOFTWARE TESTING, 2006, 3997 : 16 - 31
  • [7] Trends in Model-based GUI Testing
    Arlt, Stephan
    Pahl, Simon
    Bertolini, Cristiano
    Schaef, Martin
    [J]. ADVANCES IN COMPUTERS, VOL 86, 2012, 86 : 183 - 222
  • [8] Guided Bug Crush: Assist Manual GUI Testing of Android Apps via Hint Moves
    Liu, Zhe
    Chen, Chunyang
    Wang, Junjie
    Huang, Yuekai
    Hu, Jun
    Wang, Qing
    [J]. PROCEEDINGS OF THE 2022 CHI CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS (CHI' 22), 2022,
  • [9] Automated GUI Testing of Android Apps: From Research to Practice
    Moran, Kevin
    Linares-Vasquez, Mario
    Poshyvanyk, Denys
    [J]. PROCEEDINGS OF THE 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C 2017), 2017, : 505 - 506
  • [10] An Empirical Study on the Adoption of Scripted GUI Testing for Android Apps
    Gu, Ruizhen
    Rojas, Jose Miguel
    [J]. 2023 38TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING WORKSHOPS, ASEW, 2023, : 179 - 182