lcov_ex

Test coverage module to generate a lcov.info file for an Elixir project.

The docs can be found at https://hexdocs.pm/lcov_ex.

Why

Many test coverage tools use lcov files as an input to generate reports.

You can use it as I do to watch inline coverage progress with the following editors:

Please let me know if you made it work in your previously unlisted favorite editor. Or, if you're really nice, just add it to this list yourself 🙂

Installation

Add to your dependencies:

def deps do
[
{:lcov_ex, "~> 0.2", only: [:dev, :test], runtime: false}
]
end

Usage

mix lcov

File should be created at ./cover/lcov.info by default.

To run silently use the --quiet option:

mix lcov --quiet

As test coverage tool

Alternatively, you can set up LcovEx as your test coverage tool in your project configuration:

def project do
[
...
test_coverage: [tool: LcovEx, output: "cover"],
...
]

And then, run with:

mix test --cover

The output option indicates the output folder for the generated file.

Optionally, the ignore_paths option can be a list of prefixes to ignore when generating the coverage report.

def project do
[
...
test_coverage: [tool: LcovEx, output: "cover", ignore_paths: ["test/"]]
...
]

TODOs