A state coverage tool for JUnit

Abstract

We present a JUnit test runner that informs users of missing behavior checks in their tests. The tool tracks variable updates and definitions over the course of a test execution and determines which variables influence which assertions via dynamic taint analysis. The program statements that set outputs which do not influence the outcome of any test assertions are reported as state coverage inadequacies. With traditional code coverage tools, users can ensure that tests execute all program statements; with this tool, they can additionally ensure that program output is checked, in one way or another, by a test.

DOI: 10.1145/1370175.1370210

Extracted Key Phrases

2 Figures and Tables

Cite this paper

@inproceedings{Koster2008ASC, title={A state coverage tool for JUnit}, author={Ken Koster}, booktitle={ICSE Companion}, year={2008} }