Freedom251 › Test Coverage Tools
Coverlet

What Coverlet is
Coverlet is a .NET code coverage framework that measures line, branch, and method coverage on Linux, macOS, and Windows. It instruments assemblies before tests, records which sequence points are reached, restores the original assemblies, and produces coverage results. Developers can use its Microsoft Testing Platform, .NET global tool, VSTest, or MSBuild integrations. The Microsoft Testing Platform driver can produce JSON, LCOV, OpenCover, and Cobertura reports. Depending on the driver, options include combining reports, checking coverage thresholds, and supporting deterministic builds. The collector and MSBuild packages run through VSTest and are not compatible with Microsoft Testing Platform projects; Coverlet offers coverlet.MTP for those projects. It supports modern SDK-style projects, while its MTP package requires .NET 8.0 SDK or newer. The project also lists a Cake Build add-in and extensions for viewing coverage in Visual Studio on Windows and Visual Studio for Mac. Coverlet is free under the MIT License.
Who it suits
Coverlet suits .NET developers who need line, branch, or method coverage and want to integrate it with their test platform or build workflow. Microsoft Testing Platform users need .NET 8.0 SDK or newer for the MTP package.
What it does well
- Measures line, branch, and method coverage
- Integrates with MTP, .NET global tool, VSTest, and MSBuild
- MTP driver supports four report formats
- Offers coverage threshold validation, depending on driver
- Free under the MIT License
What to know first
- Collector and MSBuild packages are incompatible with MTP projects
- MTP package requires .NET 8.0 SDK or newer
Limits
The Coverlet plan is free and MIT licensed. For Microsoft Testing Platform projects, the coverlet.MTP package requires .NET 8.0 SDK or newer; report formats and options vary by driver.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| Coverlet | MIT licensed · supports modern .NET SDK-style projects | Free |
As github.com lists them, read 3 Oct 2026. The maker's own page has the final word.
Getting started
- Visit the Coverlet repository at https://github.com/coverlet-coverage/coverlet.
- Choose an integration for Microsoft Testing Platform, the .NET global tool, VSTest or MSBuild.
- For Microsoft Testing Platform projects, use coverlet.MTP and ensure the .NET 8.0 SDK or newer is available.
- Run tests so Coverlet can instrument assemblies, record sequence point hits, restore assemblies and write coverage results.
- Select a supported report format or driver-specific options as needed.
Coverlet is a free, MIT-licensed code-coverage framework for modern .NET SDK-style projects. It suits developers and build engineers who need line, branch, and method coverage across Linux, macOS, and Windows without adding a license cost. Its several test-runner integrations are useful, but the correct package depends on the test platform and required driver features.
Overview
Coverlet instruments assemblies before tests execute, records sequence-point hits, restores the original assemblies, and writes coverage results. That workflow fits automated .NET test pipelines while keeping the application binaries clean after collection. Coverage gates let teams validate a threshold rather than merely generate a report, making the tool relevant to continuous-integration checks as well as local measurement.
The project supports line, branch, and method coverage. It is open source under the MIT License, and bug reports and feature requests go through the repository's issue tracker. Those terms make Coverlet a practical choice for teams that want to inspect or integrate the tooling without commercial licensing barriers.
Key features
Multiple drivers and output formats
Coverlet offers Microsoft Testing Platform, .NET global tool, VSTest, and MSBuild integrations. The Microsoft Testing Platform driver can emit JSON, LCOV, OpenCover, and Cobertura files, giving teams options for downstream reporting and CI systems. Report merging, coverage-threshold validation, and deterministic-build support are available by driver, so selecting an integration is a functional decision rather than a packaging detail.
Test-platform compatibility
The collector and MSBuild packages use VSTest and do not work with Microsoft Testing Platform projects. MTP projects should use the separate coverlet.MTP package. This split is a meaningful limitation for repositories changing test infrastructure: confirm the runner before adding a package, or a seemingly appropriate integration may not run.
Build and editor connections
A Cake.Coverlet add-in extends Cake Build workflows. On Windows, and in Visual Studio for Mac, extensions can display coverage inside Visual Studio. These connections are useful when coverage needs to appear in an existing build or IDE workflow, although the stated editor support does not make Coverlet a universal IDE solution.
Pricing
| Plan | Price | Includes |
|---|---|---|
| Coverlet | free | MIT licensed; supports modern .NET SDK-style projects |
There is one free plan, with no free trial because the software is already free. The plan includes line, branch, and method coverage and coverage gates. No paid tiers, seat charges, renewal terms, or usage quotas are stated, so it is a straightforward fit for individual developers and teams that can operate the tooling themselves.
Platforms
Coverlet runs on Linux, macOS, and Windows. It supports modern SDK-style projects, while the MTP package requires the .NET 8.0 SDK or newer. Projects on older SDKs or non-SDK-style structures should verify compatibility before committing to the MTP route.
Who it's for
Choose Coverlet for .NET teams that need open-source coverage in automated tests, especially when line, branch, and method metrics or threshold gates matter. Its format choices suit pipelines that consume JSON, LCOV, OpenCover, or Cobertura, and its Cake and Visual Studio connections help teams already using those environments.
It is less suitable when you need one package that works across VSTest and Microsoft Testing Platform, since the integrations are separate and driver capabilities differ. It also demands attention to SDK and runner versions, particularly for MTP projects.
Pros and cons
Pros
- Broad .NET integration: Microsoft Testing Platform, global-tool, VSTest, and MSBuild drivers cover common test and build arrangements.
- Useful coverage depth: Line, branch, and method metrics provide more than a single aggregate score.
- Pipeline-friendly outputs: The MTP driver supports four established report formats.
- Quality gates: Threshold validation can stop builds that fall below a required level.
- No license cost: The MIT license and free plan remove commercial purchasing barriers.
Cons
- Runner split: VSTest-based collector and MSBuild packages are incompatible with Microsoft Testing Platform.
- Uneven driver features: Merging, gates, and deterministic-build support vary by integration.
- MTP version requirement: The MTP package needs .NET 8.0 SDK or newer.
Alternatives
OpenClover is a free option for Linux, macOS, Windows, and web environments, with no license tiers, keys, or usage limits stated.
SimpleCov is the better match for Ruby code coverage; it is free, MIT licensed, and supports Linux, macOS, Windows, and web.
BullseyeCoverage is worth considering when you need a paid product with a fully functional temporary evaluation license.
cargo-llvm-cov fits Rust projects seeking a free Apache-2.0 or MIT-licensed tool.
Coverage.py is the alternative for Python coverage, with an open-source tool and an enterprise subscription available through Tidelift.
Coveralls suits teams wanting a hosted coverage service, with free use for open-source and public repositories.
EclEmma is the choice for Java coverage inside Eclipse.
gcov fits GCC-based projects that can compile with coverage instrumentation.
Verdict
Coverlet is a strong choice for .NET developers and CI maintainers who want free, open-source line, branch, and method coverage with threshold gates and several integrations. Its main reason to choose it is the combination of broad .NET workflow support and practical report formats. Look elsewhere if your project uses Microsoft Testing Platform and VSTest interchangeably, requires identical features across drivers, or targets an ecosystem such as Ruby, Rust, Python, Java, or GCC.
Verdict
Coverlet provides several .NET test and build integrations, with report formats and options varying by driver. Check package compatibility with your test platform before choosing an integration.
Questions
How much does Coverlet cost?
Coverlet is free. Its listed plan costs nothing and is MIT licensed.
Which coverage types does it report?
It reports line, branch and method coverage.
Which platforms does Coverlet support?
It is cross-platform and supports Linux, macOS and Windows.
Which report formats are available?
The Microsoft Testing Platform driver supports JSON, LCOV, OpenCover and Cobertura output.
Does Coverlet support Microsoft Testing Platform projects?
Yes. The project provides coverlet.MTP for MTP projects. Its collector and MSBuild packages use VSTest and are incompatible with Microsoft Testing Platform.
What license does Coverlet use?
The repository states that Coverlet is licensed under the MIT License.
Facts from Coverlet's own pages
- Coverage workflow
- It instruments assemblies before tests run, records sequence point hits, restores the original assemblies and writes coverage results. · github.com, 3 Oct 2026
- Drivers
- Coverlet provides Microsoft Testing Platform, .NET global tool, VSTest and MSBuild integrations. · github.com, 3 Oct 2026
- Feature options
- Driver features include report merging, coverage threshold validation and deterministic build support, with availability varying by driver. · github.com, 3 Oct 2026
- Integrations
- The project lists a Cake.Coverlet add-in for Cake Build and extensions for viewing coverage in Visual Studio on Windows and Visual Studio for Mac. · github.com, 3 Oct 2026
- License
- The repository states that Coverlet is licensed under the MIT License. · github.com, 3 Oct 2026
- Maintainers
- The repository lists Toni Solarin-Sodara as author and owner, alongside co-maintainers. · github.com, 3 Oct 2026
- Purpose
- Coverlet is a cross-platform code coverage framework for .NET with line, branch and method coverage. · github.com, 3 Oct 2026
- Report formats
- The MTP driver supports JSON, LCOV, OpenCover and Cobertura output formats. · github.com, 3 Oct 2026
- Requirements
- Coverlet supports modern SDK-style projects, and its MTP package requires .NET 8.0 SDK or newer. · github.com, 3 Oct 2026
- Support
- The project directs users to report bugs and feature requests through the repository’s issues section. · github.com, 3 Oct 2026
- Test platform
- The collector and MSBuild packages use VSTest and are incompatible with Microsoft Testing Platform; the project provides coverlet.MTP for MTP projects. · github.com, 3 Oct 2026
Where Coverlet stands on Freedom251
- Test Coverage Tools#7 of 27