cargo-kcov
Collect test coverage on all the test cases for the current project using
kcov
on Linux.
Usage
In the project run
It will run all test cases and collect coverage statistics via kcov. The coverage report can be read
from target/cov/index.html
.
Prerequisite
Important!
kcov
only supports covering Rust programs on Linux at the moment. Track SimonKagstrom/kcov#135 and #157 for macOS support.
You need to install kcov
v26 or above to collect coverage report from Rust. Some distro is still
shipping v25 or v11, so you will need to build from source.
Please follow the instruction in https://users.rust-lang.org/t/650. cargo-kcov
requires v30 or
above since earlier versions of kcov do not report its version number.
cargo-kcov requires Rust 1.11.0 or above (requirement by the clap
crate).
Install
cargo-kcov
can be installed with cargo install
.
Options
cargo-kcov 0.3.0
Generate coverage report via kcov
USAGE:
cargo kcov [OPTIONS] [--] [ARGS]
OPTIONS:
--lib Test only this package's library
--bin <NAME>... Test only the specified binary
--example <NAME>... Test only the specified example
--test <NAME>... Test only the specified integration test target
--bench <NAME>... Test only the specified benchmark target
-j, --jobs <N> The number of jobs to run in parallel
--release Build artifacts in release mode, with optimizations
--features <FEATURES> Space-separated list of features to also build
--no-default-features Do not build the `default` feature
--target <TRIPLE> Build for the target triple
--manifest-path <PATH> Path to the manifest to build tests for
--no-fail-fast Run all tests regardless of failure
--kcov <PATH> Path to the kcov executable
-o, --output <PATH> Output directory, default to [target/cov]
-v, --verbose Use verbose output
--coveralls Upload merged coverage data to coveralls.io from Travis CI
-h, --help Prints help information
-V, --version Prints version information
ARGS:
<KCOV-ARGS>... Further arguments passed to kcov