Abstract | ||
---|---|---|
Test case prioritization (TCP) aims to reorder the regression test suite with a goal of increasing the fault detection rate. Various TCP techniques have been proposed based on different prioritization strategies. Among them, the greedy-based techniques are the most widely-used TCP techniques. However, existing greedy-based techniques usually reorder all candidate test cases in prioritization iterations, resulting in both efficiency and effectiveness problems. In this paper, we propose a generic partial attention mechanism, which adopts the previous priority values (i.e., the number of additionally-covered code units) to avoid considering all candidate test cases. Incorporating the mechanism with the additional-greedy strategy, we implement a novel coverage-based TCP technique based on partition ordering (OCP). OCP first groups the candidate test cases into different partitions and updates the partitions on the descending order. We conduct a comprehensive experiment on 19 versions of Java programs and 30 versions of C programs to compare the effectiveness and efficiency of OCP with six state-of-the-art TCP techniques: total-greedy, additional-greedy, lexicographical-greedy, unify-greedy, art-based, and search-based. The experimental results show that OCP achieves a better fault detection rate than the state-of-the-arts. Moreover, the time costs of OCP are found to achieve 85%–99% improvement than most state-of-the-arts. |
Year | DOI | Venue |
---|---|---|
2022 | 10.1016/j.jss.2022.111419 | Journal of Systems and Software |
Keywords | DocType | Volume |
Software testing,Regression testing,Test case prioritization,Greedy algorithm | Journal | 192 |
ISSN | Citations | PageRank |
0164-1212 | 0 | 0.34 |
References | Authors | |
0 | 5 |
Name | Order | Citations | PageRank |
---|---|---|---|
Quanjun Zhang | 1 | 0 | 0.68 |
Chunrong Fang | 2 | 153 | 18.99 |
Weisong Sun | 3 | 0 | 0.34 |
Shengcheng Yu | 4 | 0 | 0.34 |
Yutao Xu | 5 | 0 | 0.68 |