NCover Documentation

Download the new version here.

Features and Improvements

  • Essential support for .NET v4.0. Read more.
  • Added two new Report Style's for the NCover Explorer tree view -- one shows Symbol Coverage and Cyclomatic Complexity, and the other shows all metrics.
  • The FullCoverageReport now supports Satisfactory Coverage thresholds.
  • When NCover Explorer asks to rebase a path, it rebases all files with the same root path, instead of each file individually.
  • Added a new help window that has common links.
  • Made the //expert argument available in the build tasks and NCover Explorer. (Was available only through the command line before).
  • Creating a report from the NCover Explorer report window should now open the right generated file in 99.9% of all cases. Some of the data was being massaged behind the scenes without telling the report window, which sometimes made the wrong file open.
  • Satisfactory thresholds, report options, and filters are now synchronized between the project's and the coverage data's settings by default.
  • Reduced memory usage of the NCover.Upconvert program by up to 80%.
  • The x64 install of NCover can now use license keys registered with the x86 Registration program.
  • The Registration program now shows which license key is installed, if a key is installed.
  • Improved log output of the MSBuild task.
  • Added a new sample application that demos C# 4.0 features. The sample is installed in Samples\DotNet4LanguageFeatures.
  • Db trend files now roughly twice as fast when adding new data.
  • NCover now explicitly states what program (NCover.Console or the covered process) is returning the exit code.
  • NCover now explains exit codes from NUnit and MSTest in the console output.
  • Added Average and Maximum cyclomatic complexity to the FullCoverageReport.
  • The chosen Report Style is now displayed at the top of the tree view panel.
  • All of the fields in the "Program Options" window that interact with the filesystem now support intellisense and tab-completion.
  • Added a splash screen to improve cold startup times.


  • The 'Show after Generation' checkbox in the NCover Explorer report window is now checked by default.
  • The FullCoverageReport now interprets paths that end in .htm or .html as files, not folders, when it is created from NCover Explorer or NCover Reporting.
  • The //h argument to NCover Console now interprets paths that end in .htm or .html as files, not folders.
  • Changed the //literal argument to //expert (on the NCover.Console command line). The //literal argument still works.
  • Added the //expertmode argument as an alias for the //expert argument, to help it match the build tasks.
  • The 'FilterType' parameter for the //cf ( argument in NCover Reporting is now required.
  • Updated the Boost library to the latest version to take advantage of several speed improvements and bug fixes. This change should only affect inclusions and exclusions on the NCover.Console command line.
  • The Error reporting window in NCover Explorer no longer requires a registered license to operate. This should make it easier to report bugs that happen before NCover Explorer really starts.
  • The //sct argument ( now allows a 0% satisfactory coverage threshold.
  • Changed (muted) the covered/uncovered/acceptable colors in the FullCoverageReport -- they now match the colors in the xslt reports.
  • The NCover Explorer tree view elements are now colored covered/uncovered/satisfactory based on the Report Style chosen.
  • A default, programmatic list of default exclusions is now used when the ncover.console.exe.config file is not in the same directory as the ncover.console.exe program.
  • The //pm argument now strips directory information from its argument, if directory information is present.
  • NCover Explorer only asks to rebase a source file if it can't find the file, instead of asking if the file has changed. A rebase can still be forced.
  • No longer able to edit the original path in the rebased source window.
  • Hide above threshold in the treeview now hides the methods that are above the threshold and not any item above that. We felt that hiding a class, namespace or module above a threshold was a bad practice, hiding bad code that you may never know about.

Bug Fixes

  • The NCover Explorer report window no longer throws an exception when the FullCoverageReport is created with the same output path as a different report.
  • If the coverage file and the trend file were the same except for the filename extension, e.g. "coverage.1452.xml" and "coverage.1452.trend", NCover Explorer would write both to the same file.
  • Updated include/exclude explanations on the Inclusions and Exclusions screens in NCover Explorer
  • If the coverage file changed outside of NCover Explorer (e.g. by running NCover from the command line), NCover Explorer would ask multiple times if it should reload coverage data, instead of once.
  • When NCover is running and the close button in the title bar is clicked, NCover Explorer now asks whether it should stop NCover before exiting. Before, the NCover process would be orphaned, which sometimes made it impossible to run coverage again until the computer was restarted.
  • Fixed a NullReferenceException bug in the Registration program.
  • Updated trend file parsing/logic to handle duplicate document IDs.
  • Fixed multiple minor bugs in the MSBuild task.
  • The xslt trend report now understands the //sct argument, instead of using default satisfactory values.
  • Fixed the NAnt build task samples to correspond with the attribute and element names that the build task actually uses.
  • NCoverExplorer.Console.exe (legacy support) wouldn't create a FullCoverageReport even when a correct license was present.
  • Updated documentation for //cf to include a missing value for the FilterType.
  • The NCover Explorer report window was overwriting the selected Report Style on the tree view when it generated a report.
  • The script helper wasn't surrounding the path to NCover.Console.exe with quotes.
  • The "Open in VS.NET" menu option on the tree view now opens to the right line in Visual Studio, instead of the first line in the file.
  • The FullCoverageReport and UncoveredCodeSections reports didn't respect the //topuncovered argument, and merely reported all uncovered blocks of code. Minor speed gains.
  • Removing a rebased path didn't work if there were any uppercase characters in the path.
  • The NCover Explorer "Report an Error" window would throw an exception if the email field was left blank.
  • The NAnt task for NCover wasn't being generated correctly.
  • The 'choose a license file' option in the NCover Registration program wasn't wired up.

If you still need technical assistance, we can help:

Submit A Support Ticket