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 条
  • [31] Design of GUI-Component Energy Profiler for Android Applications
    Hatayama, Kazuki
    Hisazumi, Kenji
    Yoshise, Kana
    Ishida, Shigemi
    Fukuda, Akira
    TENCON 2015 - 2015 IEEE REGION 10 CONFERENCE, 2015,
  • [32] Improving Automated GUI Exploration of Android Apps via Static Dependency Analysis
    Guo, Wunan
    Shen, Liwei
    Su, Ting
    Peng, Xin
    Xie, Weiyang
    2020 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2020), 2020, : 557 - 568
  • [33] A Systematic Study on Factors Impacting GUI Traversal-Based Test Case Generation Techniques for Android Applications
    Jiang, Bo
    Zhang, Yaoyue
    Chan, Wing Kwong
    Zhang, Zhenyu
    IEEE TRANSACTIONS ON RELIABILITY, 2019, 68 (03) : 913 - 926
  • [34] A Context-aware Approach for Dynamic GUI Testing of Android Applications
    Zhu, Haowen
    Ye, Xiaojun
    Zhang, Xiaojun
    Shen, Ke
    39TH ANNUAL IEEE COMPUTERS, SOFTWARE AND APPLICATIONS CONFERENCE (COMPSAC 2015), VOL 2, 2015, : 248 - 253
  • [35] Practical GUI Testing of Android Applications via Model Abstraction and Refinement
    Gu, Tianxiao
    Sun, Chengnian
    Ma, Xiaoxing
    Cao, Chun
    Xu, Chang
    Yao, Yuan
    Zhang, Qirun
    Lu, Jian
    Su, Zhendong
    2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2019), 2019, : 269 - 280
  • [36] Goal-Driven Exploration for Android Applications
    Lai, Duling
    Rubin, Julia
    34TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2019), 2019, : 115 - 127
  • [37] Enhancing GUI Exploration Coverage of Android Apps with Deep Link-Integrated Monkey
    Hu, Han
    Wang, Han
    Dong, Ruiqi
    Chen, Xiao
    Chen, Chunyang
    ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2024, 33 (06)
  • [38] Combining Automated GUI Exploration of Android apps with Capture and Replay through Machine Learning
    Amalfitano, Domenico
    Riccio, Vincenzo
    Amatucci, Nicola
    De Simone, Vincenzo
    Fasolino, Anna Rita
    INFORMATION AND SOFTWARE TECHNOLOGY, 2019, 105 : 95 - 116
  • [39] Automated Tool Support for Repairing Security Bugs in Android Mobile Applications
    Singleton, Larry
    2019 IEEE/ACM 6TH INTERNATIONAL CONFERENCE ON MOBILE SOFTWARE ENGINEERING AND SYSTEMS (MOBILESOFT 2019), 2019, : 144 - 145
  • [40] Automatically Repairing Event Sequence-Based GUI Test Suites for Regression Testing
    Memon, Atif M.
    ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2008, 18 (02)