Test Case Prioritization Using Partial Attention

by   Quanjun Zhang, et al.

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 state-of-the-arts.


page 1

page 2

page 3

page 4


Regression Test Case Prioritization by Code Combinations Coverage

Regression test case prioritization (RTCP) aims to improve the rate of f...

Substate Profiling for Effective Test Suite Reduction

Test suite reduction (TSR) aims at removing redundant test cases from re...

Incorporating fault-proneness estimations into coverage-based test case prioritization methods

Context: During the development process of a software program, regressio...

On the Interaction between Test-Suite Reduction and Regression-Test Selection Strategies

Unit testing is one of the most established quality-assurance techniques...

Metamorphic Relation Prioritization for Effective Regression Testing

Metamorphic testing (MT) is widely used for testing programs that face t...

Kernel-based Detection of Coincidentally Correct Test Cases to Improve Fault Localization Effectiveness

Although empirical studies have confirmed the effectiveness of spectrum-...

Growing a Test Corpus with Bonsai Fuzzing

This paper presents a coverage-guided grammar-based fuzzing technique fo...