Evaluation of the effecAtiveness of the enchanced greedyand delta-debugging test case optimization algorithms for C++ libraries

Read full text
Authors: Oleksii Kolomiitsev, Mykhailo Hulevych, Oleh Dmitriiev, Andrii Levchenko, Oleksiy Balabukha
Cited by: 1

Abstract

Efficient optimization of test cases (TCs) is a necessary condition for improving the efficiency of testing C++ libraries. The subject of the research is test case optimization algorithms for C++ libraries. The purpose of this work is to improve the efficiency of C++ libraries testing by enhancing classical algorithms for greedy TC optimization and delta-debugging TC minimization. Goals. To improve the greedy TC optimization algorithm and eliminate its determinism, ensuring effective TC compression while preserving branch code coverage. To improve the delta-debugging TC minimization algorithm under conditions where redundant actions are sparsely distributed within TCs. To evaluate the effectiveness of the proposed algorithms in comparison with the classical algorithms. Methods. The study applies a greedy TC optimization algorithm, a delta-debugging TC minimization algorithm, mathematical modeling, and statistical analysis methods. The effectiveness of the improved algorithms is evaluated based on statistical analysis of 100 simulation runs for each algorithm on two open-source C++ libraries of different structural complexity. Results. The evaluation results indicate that the improved algorithms provide preservation (and possible increase) of branch coverage with coverage retention coefficient of up to 1.058, increase the TC compression ratio up to 0.86, and reduce the TS execution time by 1.5–2.5× compared to the classical algorithms. Conclusions. The improved algorithms significantly reduce the testing time of C++ libraries without loss of branch coverage. An improved greedy TC optimization algorithm is proposed, in which the selection of TC actions accounts for their future utility estimated by the expected increase in branch coverage. This approach removes the determinism of the classical greedy algorithm, increases the informativeness of TCs, and provides a balance between preserving branch coverage and TC compression. An improved delta-debugging algorithm is proposed that performs group removal of non-unique TC actions according to their contribution to branch coverage, which makes it possible to substantially reduce the length of TCs without losing testing effectiveness.

Fields of Study & Subjects

Software Testing and Debugging Techniques Software Reliability and Analysis Research Software System Performance and Reliability

Publication details

Journal / source
Innovative technologies and scientific solutions for industries
Publisher
Kharkiv National University of Radioelectronics
Issue
1(35)
Pages
39–54
Publication date
30 March 2026
Language
UK