ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolutionary Search

被引:9
作者
Pan, Rongqi [1 ]
Ghaleb, Taher A. [1 ]
Briand, Lionel [1 ,2 ]
机构
[1] Univ Ottawa, Sch EECS, Ottawa, ON, Canada
[2] Univ Luxembourg, SnT Ctr, Luxembourg, Luxembourg
来源
2023 IEEE/ACM 45TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ICSE | 2023年
基金
加拿大自然科学与工程研究理事会;
关键词
Test case minimization; Test suite reduction; Tree-based similarity; AST; Genetic algorithm; Black-box testing; GENETIC ALGORITHM; PRIORITIZATION; SELECTION;
D O I
10.1109/ICSE48619.2023.00146
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Executing large test suites is time and resource consuming, sometimes impossible, and such test suites typically contain many redundant test cases. Hence, test case (suite) minimization is used to remove redundant test cases that are unlikely to detect new faults. However, most test case minimization techniques rely on code coverage (white-box), model-based features, or requirements specifications, which are not always (entirely) accessible by test engineers. Code coverage analysis also leads to scalability issues, especially when applied to large industrial systems. Recently, a set of novel techniques was proposed, called FAST-R, relying solely on test case code for test case minimization, which appeared to be much more efficient than white-box techniques. However, it achieved a comparable low fault detection capability for Java projects, thus making its application challenging in practice. In this paper, we propose ATM (AST-based Test case Minimizer), a similarity-based, search-based test case minimization technique, taking a specific budget as input, that also relies exclusively on the source code of test cases but attempts to achieve higher fault detection through finer-grained similarity analysis and a dedicated search algorithm. ATM transforms test case code into Abstract Syntax Trees (AST) and relies on four tree-based similarity measures to apply evolutionary search, specifically genetic algorithms, to minimize test cases. We evaluated the effectiveness and efficiency of ATM on a large dataset of 16 Java projects with 661 faulty versions using three budgets ranging from 25% to 75% of test suites. ATM achieved significantly higher fault detection rates ( 0.82 on average), compared to FAST-R ( 0.61 on average) and random minimization (0.52 on average), when running only 50% of the test cases, within practically acceptable time ( 1.1 - 4.3 hours, on average, per project version), given that minimization is only occasionally applied when many new test cases are created (major releases). Results achieved for other budgets were consistent.
引用
收藏
页码:1700 / 1711
页数:12
相关论文
共 45 条
  • [31] Generating test case for algebraic specification based on Tabu search and genetic algorithm
    Bo Yu
    Yemei Qin
    Cluster Computing, 2017, 20 : 277 - 289
  • [32] Generating test case for algebraic specification based on Tabu search and genetic algorithm
    Yu, Bo
    Qin, Yemei
    CLUSTER COMPUTING-THE JOURNAL OF NETWORKS SOFTWARE TOOLS AND APPLICATIONS, 2017, 20 (01): : 277 - 289
  • [33] Test Suite Minimization with Mutation Testing-Based Many-Objective Evolutionary Optimization
    Zheng Wei
    Wu Xiaoxue
    Yang Xibing
    Cao Shichao
    Liu Wenxin
    Lin Jun
    2017 ANNUAL CONFERENCE ON SOFTWARE ANALYSIS, TESTING AND EVOLUTION (SATE 2017), 2017, : 30 - 36
  • [34] FAST Approaches to Scalable Similarity-based Test Case Prioritization
    Miranda, Breno
    Cruciani, Emilio
    Verdecchia, Roberto
    Bertolino, Antonia
    PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2018, : 222 - 232
  • [35] A similarity-based multi-objective test optimization technique using search algorithm
    Habib, Amir Sohail
    Khan, Saif Ur Rehman
    Hussain, Shahid
    Ibrahim, Naseem
    Nisa, Habib un
    Yousafzai, Abdullah
    SYSTEMS AND SOFT COMPUTING, 2024, 6
  • [36] Test case minimization and prioritization for regression testing using SBLA-based adaboost convolutional neural network
    Raamesh, Lilly
    Jothi, S.
    Radhika, S.
    JOURNAL OF SUPERCOMPUTING, 2022, 78 (16) : 18379 - 18403
  • [37] Ant Colony System With Sorting-Based Local Search for Coverage-Based Test Case Prioritization
    Lu, Chengyu
    Zhong, Jinghui
    Xue, Yinxing
    Feng, Liang
    Zhang, Jun
    IEEE TRANSACTIONS ON RELIABILITY, 2020, 69 (03) : 1004 - 1020
  • [38] Case Weighted Similarity Measure Optimization Method Based On Black Hole Cuckoo Search Algorithm
    Yan, Aijun
    Li, Jiaxuan
    2021 PROCEEDINGS OF THE 40TH CHINESE CONTROL CONFERENCE (CCC), 2021, : 6269 - 6274
  • [39] Adaptive corrected parameters algorithm applied in cooling load prediction based on black-box model: A case study for subway station
    Hu, Yuanyang
    Qin, Luwen
    Li, Shuhong
    Li, Xiaohuan
    Zhou, Runfa
    Li, Yanjun
    Sheng, Wei
    ENERGY AND BUILDINGS, 2023, 297
  • [40] Some Seeds Are Strong: Seeding Strategies for Search-based Test Case Selection
    Arrieta, Aitor
    Valle, Pablo
    Agirre, Joseba A.
    Sagardui, Goiuria
    ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2023, 32 (01)