Synthesis-Based Enhancement for GUI Test Case Migration

被引:0
作者
Zhang, Yakun [1 ,2 ]
Zhu, Qihao [3 ]
Yan, Jiwei [4 ]
Liu, Chen [1 ,2 ]
Zhang, Wenjie [1 ,2 ]
Zhao, Yifan [1 ,2 ]
Hao, Dan [1 ,2 ]
Zhang, Lu [1 ,2 ]
机构
[1] Peking Univ, Key Lab HCST PKU, MOE, Beijing, Peoples R China
[2] Peking Univ, SCS, Beijing, Peoples R China
[3] DeepSeek AI, Beijing, Peoples R China
[4] Chinese Acad Sci, Technol Ctr Software Engn, Inst Software, Beijing, Peoples R China
来源
PROCEEDINGS OF THE 33RD ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2024 | 2024年
基金
中国国家自然科学基金;
关键词
Test migration; GUI testing; Synthesis;
D O I
10.1145/3650212.3680327
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
GUI test case migration is the process of migrating GUI test cases from a source app to a target app for a specific functionality. However, test cases obtained via existing migration approaches can hardly be directly used to test target functionalities and typically require additional manual modifications. This problem may significantly impact the effectiveness of testing target functionalities and the practical applicability of migration approaches. In this paper, we propose MigratePro, the first approach to hancing GUI test case migration via synthesizing a new test case based on multiple test cases for the same functionality migrated from various source apps to the target app. The aim of MigratePro is to produce functional test cases with less human intervention. Specifically, given multiple migrated test cases for the same functionality in the target app, MigratePro first combines all the GUI states related to these migrated test cases into an overall state-sequence. Then, MigratePro organizes events and assertions from migrated test cases according to the overall state-sequence and endeavors to remove the should-be-removed events and assertions, while also incorporating some connection events in order to make the should-be-included events and assertions executable. Our evaluation on 30 apps, 34 functionalities, and 127 test cases shows that MigratePro improves the capability of three representative migration approaches (i.e., Craftdroid, AppFlow, ATM), successfully improving testing the target functionalities by 86%, 333%, and 300%, respectively. These results underscore the generalizability of MigratePro for effectively enhancing migration approaches.
引用
收藏
页码:869 / 881
页数:13
相关论文
共 54 条
[1]   The contribution of nanotechnology for removal of water pollutants [J].
Anandan, Sambandam .
Materials Science Forum, 2012, 712 :1-24
[2]  
[Anonymous], 2024, Adoptdroid dataset
[3]  
[Anonymous], 2016, P 25 INT S SOFTWARE, DOI DOI 10.1145/2931037.2931054
[4]  
[Anonymous], 2024, Android official developing documents
[5]  
[Anonymous], 2024, Source code and extra materials for MigratePro
[6]  
[Anonymous], 2024, ATM dataset
[7]  
[Anonymous], 2024, Ui/application exerciser monkey
[8]  
[Anonymous], 2024, Fruiter dataset: a dataset to evaluate the effectiveness of test case migration tools within categories
[9]  
[Anonymous], 2024, Android debug bridge (adb)-android developers
[10]  
[Anonymous], 2024, Google Play store