This page guides you through updates in recent dotCover versions. Highlights include more options for code coverage highlighting, continuous testing for a lot faster unit test feedback, support for Visual Studio / JetBrains Rider and .NET Core.
Now, you can use dotCover on ARM64 CPUs on Windows. This applies to all versions: dotCover standalone, dotCover in Rider, dotCover in Visual Studio, and the dotCover console runner.
You can now use the dotCover console runner on ARM32 CPUs on Linux. The supported frameworks are .NET Core 3.1 and .NET 5.0–7.0.
We’ve added the Show Covering Tests action to the dotCover context menus in both the code editor and Unit Test Coverage window. This action shows a popup with all covering tests together in the same place. The popup also lets you create a new coverage session.
Now dotCover copies only the assemblies and symbol files required for continuous testing in both Visual Studio and JetBrains Rider. This improves dotCover’s overall performance, especially on large projects, as it no longer needs to copy the entire working directory. If necessary, you can adjust the shadow-copy file filter in the dotCover settings.
Previously, to analyze the coverage of Unity tests you had to restart Unity with coverage support enabled. Beginning with this release, restarting Unity is no longer required and test coverage is supported out of the box.
You can now quickly view coverage results for the file you have open using the shield icon. Clicking on the icon navigates you through the uncovered statements.
The dotCover command-line runner now supports Alpine versions 3.13–3.15. The following CPUs and frameworks are supported:
We’re adding new report types that include per-test coverage information:
New reports include three sections:
Files, which includes information about covered source code files. Detailed reports also provide information about covered ranges per file.
TestLists, which offers information about tests aggregated by test set.
Tests, which contains detailed information about each test.
You can now use comments to exclude certain lines or blocks of code from coverage analysis. Several options are available for this:
// dotcover disable
var i = 1;
var j = 10;
// dotcover enable
/* dotcover disable */ var i = 1; /* dotcover enable */
var i = 1; // dotCover disable this line
// dotcover disable next line
var j = 100;
For any of these options to work, you must reference the
JetBrains.dotCover.MSBuild NuGet package. This is a development-only
dependency that won't be included as a run-time dependency in your project.
We’ve improved the post-processing of coverage data. For example, the console
IncludePerTest=true) takes significantly less time
to generate reports.
The dotCover command-line runner now works on computers with Apple silicon processors. It can provide coverage analysis for .NET 6 applications (native mode) and .NET 5 applications (Rosetta 2 mode).
A new Code Vision metric has been added to dotCover in Rider. For each type member included in a set of tests, dotCover shows the number of successful and failed tests. You can also use a Code Vision notification to run, cover, and debug the tests.
The dotCover .NET global tool now includes the merge and report commands.
We’ve improved the performance of the dotCover command-line runner, resulting in faster coverage analysis.
The dotCover console runner is able to collect coverage information for individual
tests and show it in the generated reports. Currently, only the following test runners
vstest.console.exe. For example:
dotCover.exe dotnet --output=AppCoverageReport.xml --reportType=XML
--IncludePerTestInfo=Method -- test "C:\MyProject\MainTests.csproj"
You can now configure coverage filters in Visual Studio with ReSharper in the same way as in JetBrains Rider.
You can install the dotCover console runner as a
dotnet global tool:
dotnet tool install --global JetBrains.dotCover.GlobalTools --version 2021.1.0
Use it to analyze coverage in your .NET Core projects and unit tests.