An experimental comparison of the effectiveness of control flow based testing approaches on seeded faults

  • Authors:
  • Atul Gupta;Pankaj Jalote

  • Affiliations:
  • Dept. of Computer Science and Engineering, Indian Institute of Technology, Kanpur, India;Dept. of Computer Science and Engineering, Indian Institute of Technology, Kanpur, India

  • Venue:
  • TACAS'06 Proceedings of the 12th international conference on Tools and Algorithms for the Construction and Analysis of Systems
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper, we describe the results of an experiment comparing the effectiveness of three structural coverage-testing methods, namely, block coverage, branch coverage and predicate coverage criteria on seeded faults. The implications of our work is two-fold: one, we describe a controlled simulation comparing the effectiveness of these criteria and two, we demonstrate a novel approach to generate minimal test suites for these coverage criteria so as to be able to predict relative performance of the three coverage-adequate test suites. Using a byte code coverage analyzer, five java programs of different sizes were tested. Faults were seeded in all five programs using a set of applicable mutation operators. Twenty-five different minimal JUnit test suites were then constructed for each coverage criteria-program pair and executed on program's mutants to compare the effectiveness. Results suggest that generally, branch coverage criterion performed consistently and was found to be most viable option for structural testing. However, in presence of composite conditions, predicate testing does better and its effectiveness increases with increase in the cardinality of the composite conditions.