Repairing Obsolete GUI Test Scripts for Android Applications with Exploration and Backtracking

被引:0
|
作者
Ji, Ruihua [1 ]
Qian, Zhengxuan [1 ]
Li, Zhong [1 ]
Zhu, Xiaoqing [1 ]
Pei, Yu [2 ]
Pan, Minxue [1 ]
Zhang, Tian [1 ]
机构
[1] Nanjing Univ, State Key Lab Novel Software Technol, Nanjing, Peoples R China
[2] Hong Kong Polytech Univ, Dept Comp, Hong Kong, Peoples R China
基金
中国国家自然科学基金;
关键词
Android testing; test script repair; GUI analysis;
D O I
10.1145/3671016.3671377
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Today, Android applications (apps) have become ubiquitous in various aspects of life, highlighting the importance of graphical user interface (GUI) testing in ensuring their quality. To address the high cost associated with manual GUI testing, automated GUI test scripts are commonly developed. However, as Android apps evolve rapidly to offer more services or enhance existing ones, the GUI of these applications undergoes changes between the base and updated versions, leading to the obsolescence of existing GUI test scripts and increased maintenance costs. While existing repair approaches effectively manage minor GUI changes by replacing the locators of relevant widgets, they face challenges in addressing complex updates that bring significant GUI changes, thereby altering the interaction logic. This paper proposes a novel GUI test script repair approach to tackle these challenges. The approach utilizes an exploration and backtracking method to address the substantial GUI changes introduced by complex updates. By controlling the exploration space through exploration priority and pruning techniques, the approach achieves high effectiveness in repairing obsolete GUI tests caused by complex updates. We implemented our approach into a tool and evaluated its effectiveness and efficiency on 22 open-source Android apps and a total of 122 obsolete GUI test scripts. The experimental results showed that our approach can successfully repair 90% of the obsolete GUI test scripts.
引用
收藏
页码:51 / 60
页数:10
相关论文
共 50 条
  • [21] Examining Performance Issues of GUI Based Android Applications
    Shin, Jung-Hoon
    Abebe, Mesfin
    Kim, Suntae
    Yoo, Cheol Jung
    Jin, Kwang-Yoon
    ADVANCED MULTIMEDIA AND UBIQUITOUS ENGINEERING: FUTURETECH & MUE, 2016, 393 : 415 - 420
  • [22] Using GUI Ripping for Automated Testing of Android Applications
    Amalfitano, Domenico
    Rita Fasolino, Anna
    Tramontana, Porfirio
    De Carmine, Salvatore
    Memon, Atif M.
    2012 PROCEEDINGS OF THE 27TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE), 2012, : 258 - 261
  • [23] DetReduce: Minimizing Android GUI Test Suites for Regression Testing
    Choi, Wontae
    Sen, Koushik
    Necula, George
    Wang, Wenyu
    PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2018, : 445 - 455
  • [24] Repairing Fragile GUI Test Cases Using Word and Layout Embedding
    Yoon, Juycon
    Chung, Seungjoon
    Shin, Kihyuck
    Kim, Jinhan
    Hong, Shin
    Yoo, Shin
    2022 IEEE 15TH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST 2022), 2022, : 291 - 301
  • [25] TestMig: Migrating GUI Test Cases from iOS to Android
    Qin, Xue
    Zhong, Hao
    Wang, Xiaoyin
    PROCEEDINGS OF THE 28TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS (ISSTA '19), 2019, : 284 - 295
  • [26] Building test applications at the GUI level
    Data Translation
    EE Eval Engin, 2007, 5 (28-31):
  • [27] A Crawling Approach of Hierarchical GUI Model Generation for Android Applications
    Liu, Chien-Hung
    Chen, Ping-Hung
    JOURNAL OF INTERNET TECHNOLOGY, 2018, 19 (05): : 1613 - 1623
  • [28] A locator repair method for GUI test scripts using distributed representation.
    Isogami Y.
    Kishi T.
    Computer Software, 2020, 37 (04): : 24 - 30
  • [29] Building test applications at the GUI level
    Ludy, Tim
    EE-EVALUATION ENGINEERING, 2007, 46 (05): : 28 - +
  • [30] GUI Code Generation for Android Applications Using a MDA Approach
    Sabraoui, Ayoub
    El Koutbi, Mohammed
    Khriss, Ismail
    PROCEEDINGS OF 2012 INTERNATIONAL CONFERENCE ON COMPLEX SYSTEMS (ICCS12), 2012, : 393 - 398