Subject Programs


Change Log

When What
October 30th, 2015 Donated by James H. Andrews


Studies who have been using the data (in any form) are required to include the following reference:

  title={Comparing multi-point stride coverage and dataflow coverage},
  author={Hassan, Mohammad Mahdi and Andrews, James H},
  booktitle={Proceedings of the 2013 International Conference on Software Engineering},
  organization={IEEE Press}

About the Data

Overview of Data

Fifteen subject programs in three different programming languages (eleven C, one C++, three Java) were used. The programs were selected as they were used in previous research and regarded as standard.

The programs are: concordance, flex, gzip, grep, sed, printtokens, printtokens2, replace, schedule, schedule2, tcas, totinfo, jtopas, nanoxml and xml-security.

Attribute Information

Type of program, Programming language, SLOC, Number of test cases, Branch coverage of whole test pool, Test suite diversity, Partial execution pattern constant

Paper Abstract

We introduce a family of coverage criteria, called Multi-Point Stride Coverage (MPSC). MPSC generalizes branch coverage to coverage of tuples of branches taken from the execution sequence of a program. We investigate its potential as a replacement for dataflow coverage, such as def-use coverage. We find that programs can be instrumented for MPSC easily, that the instrumentation usually incurs less overhead than that for def-use coverage, and that MPSC is comparable in usefulness to def-use in predicting test suite effectiveness. We also find that the space required to collect MPSC can be predicted from the number of branches in the program.