Test Case Prioritization Using Partial Attention

06/22/2022
by   Quanjun Zhang, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

page 4

07/01/2020

Regression Test Case Prioritization by Code Combinations Coverage

Regression test case prioritization (RTCP) aims to improve the rate of f...
08/24/2018

Substate Profiling for Effective Test Suite Reduction

Test suite reduction (TSR) aims at removing redundant test cases from re...
08/18/2019

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

Context: During the development process of a software program, regressio...
07/26/2022

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

Unit testing is one of the most established quality-assurance techniques...
09/20/2021

Metamorphic Relation Prioritization for Effective Regression Testing

Metamorphic testing (MT) is widely used for testing programs that face t...
03/25/2018

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

Although empirical studies have confirmed the effectiveness of spectrum-...
03/07/2021

Growing a Test Corpus with Bonsai Fuzzing

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