Man Linux: Main Page and Category List

NAME

       rcov - create a code coverage report for Ruby tests

SYNOPSIS

       rcov [options] <script1.rb> [script2.rb] [-- --extra-options]

DESCRIPTION

       rcov is a code coverage tool for Ruby. It creates code coverage reports
       showing the unit test coverage of the target code.

       rcov does "statement  coverage",  also  referred  to  as  "C0  coverage
       analysis".   It  tests,  if  each  line  of  the  source  code has been
       executed.

       rcov is typically used to find the areas of a  program  that  have  not
       been sufficiently tested. It reports, what code has not been run by any
       test cases.

       It can easily be integrated into build processes  (e.g.  with  rake  or
       rant) and creates the coverage reports in HTML or text format.

OPTIONS

       -o, --output
              Destination directory.

       -I, --include PATHS
              Prepend PATHS to $: (colon separated list)

       --[no-]comments
              Mark all comments by default. (default: --no-comments)

       --test-unit-only
              Only trace code executed inside TestCases.

       --spec-only
              Only trace code executed inside RSpec specs.

       -n, --no-color
              Create colorblind-safe output.

       -i, --include-file PATTERNS
              Generate  info  for  files  matching  a pattern (comma-separated
              regexp list)

       -x, --exclude PATTERN
              Don’t  generate  info  for  files  matching  a  pattern  (comma-
              separated regexp list)

       --exclude-only PATTERNS
              Skip info only for files matching the given patterns.

       --rails
              Skip config/, environment/ and vendor/.

       --[no-]callsites
              Show  callsites  in  generated  XHTML  report. (somewhat slower;
              disabled by default)

       --[no-]xrefs
              Generate fully cross-referenced report. (includes --callsites)

       -p, --profile
              Generate bogo-profiling info.

       -r, --range RANGE
              Color scale range for profiling info (dB).

       -a, --annotate
              Generate annotated source code.

       -T, --text-report
              Dump detailed plain-text report to stdout. (filename, LoC, total
              lines, coverage)

       -t, --text-summary
              Dump plain-text summary to stdout.

       --text-counts
              Dump execution counts in plaintext.

       --text-coverage
              Dump  coverage info to stdout, using ANSI color sequences unless
              -n.

       --gcc  Dump uncovered line in GCC error format.

       --aggregate FILE
              Aggregate data from previous runs in FILE. Overwrites FILE  with
              the merged data. FILE is created if necessary.

       -D, --text-coverage-diff [FILE]
              Compare  code  coverage  with  saved  state in FILE, defaults to
              coverage.info.  Implies --comments.

       --save [FILE]
              Save coverage  data  to  FILE,  for  later  use  with  rcov  -D.
              (default: coverage.info)

       --[no-]html
              Generate HTML output. (default: --html)

       --css relative/path/to/custom.css
              Use  a custom CSS file for HTML output.  Specified as a relative
              path.

       --sort CRITERION
              Sort files in the output by  the  specified  field  (name,  loc,
              coverage)

       --sort-reverse
              Reverse files in the output.

       --threshold INT
              Only list files with coverage < INT %. (default: 101)

       --failure-threshold [INT]
              Fail if the coverage is below the threshold (default: 100)

       --charset CHARSET
              Charset used in Content-Type declaration of HTML reports.

       --only-uncovered
              Same as --threshold 100

       --replace-progname
              Replace $0 when loading the .rb files.

       -w     Turn warnings on (like ruby).

       --no-rcovrt
              Do  not  use  the  optimized  C  runtime. (will run 30-300 times
              slower)

       --diff-cmd PROGNAME
              Use PROGNAME for --text-coverage-diff. (default: diff)

       -h, --help
              Show extended help message

       --report-cov-bug SELECTOR
              Report  coverage  analysis  bug  for  the  method  specified  by
              SELECTOR (format: Foo::Bar#method, A::B.method)

       --version
              Show version

EXAMPLES

       To  simply  run  rcov  on  all  ruby files in the current directory and
       create a HTML coverage report in ./coverage:

       rcov *.rb

       To run the tests in ./tests, include ./lib,  only  take  care  of  code
       executed from TestCases and output a summary to STDOUT:

       rcov --test-unit-only -t -I./lib ./tests/*.rb

SEE ALSO

       runit(1), rake(1), rant(1)

       http://github.com/relevance/rcov

       Full  Documentation about the integration into other tools is available
       in /usr/share/doc/rcov/README.*

AUTHOR

       The manpage is provided by Micah Anderson <micah@debian.org> as part of
       the  Debian’s  rcov  package.  Upstream  author  of  rcov  is  Mauricio
       Fernandez <mfp@acm.org>.

       All the option descriptions have mainly be taken from the  help  output
       of rcov.