Zamcov is a project which brings a tool for non-intrusive Objective Caml code coverage, with MC/DC measure report generation. Instead of instrumenting the code (rewriting the source code), it uses the virtual machine to generate execution traces.
This project is part of project Couverture.
WARNING: STILL IN BETA
for version 0.9:
wget http://www.algo-prog.info/zamcov/distribution/zamcov-0.9.tar.gz tar xzf zamcov-0.9.tar.gz cd zamcov-0.9 edit config.mk # leave it if default options suit you, else edit the file wget http://caml.inria.fr/pub/distrib/ocaml-3.11/ocaml-3.11.2.tar.gz make
Three binaries are generated:
zamcov-compile is a modified version of ocamlc compiler, which is able to generate additional information on the link between the binary and the source code.zamcov-cover is a coverage report generator.zamcov-run is an implementation of the OCaml Virtual Machine which is able to generate execution traces for report generation.
Here is an example with test.ml:
./zamcov-compile test.ml -o test.exe ./zamcov-run -mcdc test.mcdc -trace test.trace test.exe ./zamcov-cover -mcdc test.mcdc -trace test.trace test.exe open ./coverage_report/index.html
dev (at) zamcov.algo-prog.info