Product Features

NDepend is a .NET tool that provides deep insight into code bases. The tool empowers developers, architects and executives to make intelligent decisions on projects. The community name it the "Swiss Army Knife" for .NET programmers.

Easily Manage Large Projects

Most companies have large systems that work together, often in mysterious ways. NDepend's in-depth reporting and toolset can help your company enforce its own coding standards and maintain complex projects.

Code Rule and Code Query

Hundreds of default code rules to check against best practices. Support for Code Query over C# LINQ (CQLinq) to easily customize rules and query code.

Powerful Dependency Graph and Matrix

Explore how the code is actually structured and shed light on architectural flaws thanks to the most powerful code dependency graph and dependency matrix available in the tool industry.

Smart Technical Debt Estimation

For each issue, the cost to fix and the severity are estimated through smart and customizable C# formulas. Thus estimations proposed are realistic.

Continuous .NET Code Quality and Security

A unique approach to continuously keep the technical debt under control and reimburse it with time.

Interactive Web Report

Integrate NDepend analysis into your CI / CD pipeline and obtain interactive and detailed web reports to explore progression and prevent code quality degradation.

 

Quality Gates

Fail the build pipeline upon customizable PASS / WARN / FAIL code quality and security criteria.

 

Import Roslyn and ReSharper Issues

Gain a 360 view of your .NET code quality by importing your preferred Roslyn Analyzers' issues and ReSharper Code Inspections' issues into the NDepend web report and UI.

Monitor the Health of Your Application

NDepend allows your team to accurately gauge the overall health of your application, no matter how complex it is.

Trend Monitoring

Get Trend Charts about pretty much any code metrics to master the evolution of your application.

Reduce Friction Between Your Developer Teams

NDepend's reporting and analysis helps architects and developers to communicate and reduce confusion.

Code Diff since Baseline

Compare two versions of a code base and its issues set, and browse diff and changes in any way you can think of.

Working with Legacy Code is Now Easier

By mapping out the structure of the project, it is much easier to see how components and dependencies are connected.

Real-World Proof

Integrate with Visual Studio, Azure DevOps, GitHub and any other CI/CD pipeline, super fast and lightweight analysis, NDepend is conceived for real-world programmers.

See how NDepend can change the way your company creates software.
Click below to download your 14 day trial

Download free trial.

Or you can see how to get started with NDepend and explore its in-depth documentation.

Get Started

Harness Test Coverage Data

Writing automatic tests is a central practice to increase code correctness. Knowing which part of the code is covered by automatic tests helps improving tests and consequently, it helps increasing code correctness.

NDepend gathers code coverage data from NCover, NCrunch OpenCover, dotCover and Visual Studio. From this data, NDepend infers some metrics on methods, types, namespaces and assemblies : PercentageCoverage, NbLinesOfCodeCovered, NbLinesOfCodeNotCovered and BranchCoverage (from NCover and OpenCover only).

These metrics can be used conjointly with others NDepend features. For example you can know what code have been added or refactored since the last release and is not thoroughly covered by tests. You can write a CQLinq rule to continuously check that a set of classes is 100% covered. You can list which complex methods need more tests.

Searching for method more than 90% covered by tests

Another unique usage of code coverage data in NDepend is visualizing code coverage through the code metric view. See a screenshot below of the metric view on the NDepend code base:

  • Rectangle are methods of the code base.
  • Each rectangle area is proportional to the #lines of code of the method.
  • and the rectangle color is defined by the percentage coverage by tests of the method.

This represents a unique way to understand the code coverage of the application, and see where more effort is needed.

Metric View: Each rectangle represents a method. The rectangle size is proportional to the Lines of Code, the rectangle color depends on the Percentage Code Coverage

Related Links::
NDepend and Code Coverage FAQ