Electronic Proceedings in Theoretical Computer Science (Nov 2012)

CTGEN - a Unit Test Generator for C

  • Tatiana Mangels,
  • Jan Peleska

DOI
https://doi.org/10.4204/EPTCS.102.9
Journal volume & issue
Vol. 102, no. Proc. SSV 2012
pp. 88 – 102

Abstract

Read online

We present a new unit test generator for C code, CTGEN. It generates test data for C1 structural coverage and functional coverage based on pre-/post-condition specifications or internal assertions. The generator supports automated stub generation, and data to be returned by the stub to the unit under test (UUT) may be specified by means of constraints. The typical application field for CTGEN is embedded systems testing; therefore the tool can cope with the typical aliasing problems present in low-level C, including pointer arithmetics, structures and unions. CTGEN creates complete test procedures which are ready to be compiled and run against the UUT. In this paper we describe the main features of CTGEN, their technical realisation, and we elaborate on its performance in comparison to a list of competing test generation tools. Since 2011, CTGEN is used in industrial scale test campaigns for embedded systems code in the automotive domain.