Test case prioritization using test case diversification and fault-proneness estimations

06/19/2021
by   Mostafa Mahdieh, et al.
0

Context: Regression testing activities greatly reduce the risk of faulty software release. However, the size of the test suites grows throughout the development process, resulting in time-consuming execution of the test suite and delayed feedback to the software development team. This has urged the need for approaches such as test case prioritization (TCP) and test-suite reduction to reach better results in case of limited resources. In this regard, proposing approaches that use auxiliary sources of data such as bug history can be interesting. Objective: Our aim is to propose an approach for TCP that takes into account test case coverage data, bug history, and test case diversification. To evaluate this approach we study its performance on real-world open-source projects. Method: The bug history is used to estimate the fault-proneness of source code areas. The diversification of test cases is preserved by incorporating fault-proneness on a clustering-based approach scheme. Results: The proposed methods are evaluated on datasets collected from the development history of five real-world projects including 357 versions in total. The experiments show that the proposed methods are superior to coverage-based TCP methods. Conclusion: The proposed approach shows that improvement of coverage-based and fault-proneness based methods is possible by using a combination of diversification and fault-proneness incorporation.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/18/2019

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

Context: During the development process of a software program, regressio...
research
08/10/2017

A Hint-Based Technique for System Level Model-Based Test Case Prioritization

Test Case Prioritization (TCP) techniques aim at proposing new test case...
research
08/18/2020

Differential coverage: automating coverage analysis

While it is easy to automate coverage data collection, it is a time cons...
research
11/02/2018

Too Trivial To Test? An Inverse View on Defect Prediction to Identify Methods with Low Fault Risk

Background. Test resources are usually limited and therefore it is often...
research
05/03/2018

Poster: Identification of Methods with Low Fault Risk

Test resources are usually limited and therefore it is often not possibl...
research
09/02/2022

FuzzerAid: Grouping Fuzzed Crashes Based On Fault Signatures

Fuzzing has been an important approach for finding bugs and vulnerabilit...
research
09/25/2021

Constructing Regression Dataset from Code Evolution History

Bug datasets consisting of real-world bugs are important artifacts for r...

Please sign up or login with your details

Forgot password? Click here to reset