Reducing test cases with causality partitions

Research output: Contribution to journalConference articlepeer-review

1 Scopus citations

Abstract

Automatic test case generation using symbolic execution suffers from the problem of path explosion: the number of paths to be explored may grow exponentially with the scale of a program. We believe that different paths may exhibit some similar program behaviors, thus it is unnecessary to explore all of the paths to generate test cases. In this paper, a novel model of program causality is proposed to extract all kinds of influences among statements of a program, which consists of four types of program dependencies. Then, a heuristic approach based on program causality is developed to selectively explore program paths in symbolic execution. We have implemented a prototype of our approach within the symbolic execution engine of Java Pathfinder. Experiments on six public benchmarks show that our approach can significantly reduce the number of explored paths and the symbolic execution time so that to improve the performance of test case generation.

Original languageEnglish
Pages (from-to)223-228
Number of pages6
JournalProceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE
Volume2014-January
Issue numberJanuary
StatePublished - 2014
Event26th International Conference on Software Engineering and Knowledge Engineering, SEKE 2014 - Vancouver, Canada
Duration: 1 Jul 20143 Jul 2014

Keywords

  • Causality partition
  • Symbolic execution
  • Test case generation

Fingerprint

Dive into the research topics of 'Reducing test cases with causality partitions'. Together they form a unique fingerprint.

Cite this