EFSM Model-Based Testing for Android Applications

被引:2
作者
Wang, Weiwei [1 ,2 ]
Guo, Junxia [1 ]
Li, Beite [1 ]
Shang, Ying [1 ]
Zhao, Ruilian [1 ]
机构
[1] Beijing Univ Chem Technol, Coll Informat Sci & Technol, Beijing 100029, Peoples R China
[2] Beijing Inst Petrochem Technol, Coll Informat Engn, Beijing 102699, Peoples R China
基金
中国国家自然科学基金;
关键词
Android apps; EFSM; test diversity; genetic algorithm;
D O I
10.1142/S0218194023500638
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Model-based testing provides an effective means for ensuring the quality of Android apps. Nevertheless, existing models that focus on event sequences and abstract them into Finite State Machines (FSMs) may lack precision and determinism because of the different data values of events that can result in various states of Android applications. To address this issue, a novel model based on Extended Finite State Machines (EFSMs) for Android apps is proposed in this paper. The approach leverages machine learning to infer data constraints on events and annotates them on state transitions, leading to a more precise and deterministic model. Additionally, a state abstraction strategy is presented to further refine the model. Besides, test diversity plays a vital role in enhancing test suite effectiveness. To achieve high coverage and fault detection, test cases are generated from the EFSM model with the help of a Genetic Algorithm (GA), guided by test diversity. To evaluate the effectiveness of our approach, this paper carries out experiments on 93 open-source apps. The results show that our approach performs better in code coverage and crash detection than the existing open-source model-based testing tools. Particularly, the 19 unique crashes that involve complex data constraints are detected by our approach.
引用
收藏
页码:597 / 621
页数:25
相关论文
共 40 条
[1]   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
[2]  
Amalfitano Domenico., 2015, P 3 INT WORKSHOP SOF, P5, DOI [10.1145/2804345.2804348, DOI 10.1145/2804345.2804348]
[3]  
Appium, 2023, ABOUT US
[4]  
Azim T, 2013, ACM SIGPLAN NOTICES, V48, P641, DOI [10.1145/2544173.2509549, 10.1145/2509136.2509549]
[5]  
babylonjs, 2023, about us
[6]   Diversity-Based Web Test Generation [J].
Biagiola, Matteo ;
Stocco, Andrea ;
Ricca, Filippo ;
Tonella, Paolo .
ESEC/FSE'2019: PROCEEDINGS OF THE 2019 27TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, 2019, :142-153
[7]   CrawlDroid: Effective Model-based GUI Testing of Android Apps [J].
Cao, Yuzhong ;
Wu, Guoquan ;
Chen, Wei ;
Wei, Jun .
INTERNETWARE'18: PROCEEDINGS OF THE TENTH ASIA-PACIFIC SYMPOSIUM ON INTERNETWARE, 2018,
[8]   Adaptive Random Testing: The ART of test case diversity [J].
Chen, Tsong Yueh ;
Kuo, Fei-Ching ;
Merkel, Robert G. ;
Tse, T. H. .
JOURNAL OF SYSTEMS AND SOFTWARE, 2010, 83 (01) :60-66
[9]   Time-travel Testing of Android Apps [J].
Dong, Zhen ;
Bohme, Marcel ;
Cojocaru, Lucia ;
Roychoudhury, Abhik .
2020 ACM/IEEE 42ND INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2020), 2020, :481-492
[10]   Improving Mobile User Interface Testing with Model Driven Monkey Search [J].
Doyle, Jordan ;
Saber, Takfarinas ;
Arcaini, Paolo ;
Ventresque, Anthony .
2021 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION WORKSHOPS (ICSTW 2021), 2021, :138-145