Visualizing Code Coverage
To visualize coverage and test results data, dotCover can highlight statements in the current snapshot right in Visual Studio editor.
To visualize code coverage in the editor
- Open the snapshot that you want to analyze in the Coverage Results Browser window or in the Coverage area of the Unit Test Sessions window/ Continuous Testing Session window.
- Click Highlight code on the toolbar of the window where the current snapshot is open.
- dotCover will highlight code in all assemblies that are included into the current coverage snapshot (see the left gutter):
- To disable highlighting of the current snapshot, press Ctrl+Alt+K H or choose in the main menu
If you switch between several snapshots in the Coverage Results Browser window or in the Coverage area of the Unit Test Sessions window/ Continuous Testing Session window, the highlighting does not switch automatically. To switch the highlighting for a particular snapshot, click Highlight code on the toolbar of the window where the current snapshot is open.
How the highlighting works
To indicate the state of the code statement, dotCover uses colored markers in the left gutter of Visual Studio:
|At least one statement in a line is not covered by unit tests.
|All statements in a line are covered by unit tests. All tests pass.
|All statements in a line are covered by unit tests. At least one test fails.
Note that if you enable the Use shaped markers (colorblind mode) setting in dotCover's highlighting options, markers will indicate coverage and test results not only with color but also with their shape.
Right after you change the code, test results become outdated. In this case, a marker keeps its color but it becomes paler. The marker's tooltip shows the info about previous state as well:
If a line of code consists of a number of statements with different coverage results, dotCover will highlight the line taking into account only the "worst" result. For example, if tests for the first statement pass, but fail for the second, dotCover will highlight the line with the red color. Or, if one statement is covered by some failing tests and another statement is not covered at all, the marker will be grey:
If you prefer the "old-style" highlighting (as in dotCover 2016.2 and earlier) when a whole line of code was highlighted, you can toggle it via.