Improving Mobile User Interface Testing with Model Driven Monkey Search

被引:5
作者
Doyle, Jordan [1 ]
Saber, Takfarinas [1 ]
Arcaini, Paolo [2 ]
Ventresque, Anthony [1 ]
机构
[1] Univ Coll Dublin, Sch Comp Sci, Lero UCD, Dublin, Ireland
[2] Natl Inst Informat, Tokyo, Japan
来源
2021 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION WORKSHOPS (ICSTW 2021) | 2021年
基金
爱尔兰科学基金会;
关键词
Android; Control Flow Graph; Exerciser Monkey; Test Generation; ANDROID APPS;
D O I
10.1109/ICSTW52544.2021.00034
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Testing mobile applications often relies on tools, such as Exerciser Monkey for Android systems, that simulate user input. Exerciser Monkey, for example, generates random events (e.g., touches, gestures, navigational keys) that give developers a sense of what their application will do when deployed on real mobile phones with real users interacting with it. These tools, however, have no knowledge of the underlying applications' structures and only interact with them randomly or in a predefined manner (e.g., if developers designed scenarios, a labour-intensive task) - making them slow and poor at finding bugs. In this paper, we propose a novel control flow structure able to represent the code of Android applications, including all the interactive elements. We show that our structure can increase the effectiveness (higher coverage) and efficiency (removing duplicate/redundant tests) of the Exerciser Monkey by giving it knowledge of the test environment. We compare the interface coverage achieved by the Exerciser Monkey with our new Monkey++ using a depth first search of our control flow structure and show that while the random nature of Exerciser Monkey creates slow test suites of poor coverage, the test suite created by a depth first search is one order of magnitude faster and achieves full coverage of the user interaction elements. We believe this research will lead to a more effective and efficient Exerciser Monkey, as well as better targeted search based techniques for automated Android testing.
引用
收藏
页码:138 / 145
页数:8
相关论文
共 26 条
[1]   A general framework for comparing automatic testing techniques of Android mobile apps [J].
Amalfitano, Domenico ;
Amatucci, Nicola ;
Memon, Atif M. ;
Tramontana, Porfirio ;
Fasolino, Anna Rita .
JOURNAL OF SYSTEMS AND SOFTWARE, 2017, 125 :322-343
[2]   MobiGUITAR Automated Model-Based Testing of Mobile Apps [J].
Amalfitano, Domenico ;
Fasolino, Anna Rita ;
Tramontana, Porfirio ;
Ta, Bryan Dzung ;
Memon, Atif M. .
IEEE SOFTWARE, 2015, 32 (05) :53-59
[3]  
Amalfitano D, 2012, IEEE INT CONF AUTOM, P258, DOI 10.1145/2351676.2351717
[4]  
Android Developers, 2015, MONKEYRUNNER
[5]  
Android Developers, 2016, ESPRESSO
[6]  
[Anonymous], 1998, Jimple: Simplifying java bytecode for analyses and transformations
[7]  
Arzt S, 2014, ACM SIGPLAN NOTICES, V49, P259, DOI [10.1145/2666356.2594299, 10.1145/2594291.2594299]
[8]  
Azim T, 2013, ACM SIGPLAN NOTICES, V48, P641, DOI [10.1145/2509136.2509549, 10.1145/2544173.2509549]
[9]  
Choi W, 2013, ACM SIGPLAN NOTICES, V48, P623, DOI [10.1145/2509136.2509552, 10.1145/2544173.2509552]
[10]  
Clement J., 2020, STATISTA MOBILE APP