NCrunch is an automated concurrent testing tool for Visual Studio. It intelligently runs automated tests so that you don't have to, while giving you amazingly useful information about your tested code, such as code coverage and performance metrics, inline in your IDE while you type.

NCrunch is the ultimate live testing tool for .NET.

Download NCrunch latest version 4.6 (28 Nov 2020)


Automatic Concurrent Testing
A normal cycle of test driven development makes you stop to run your tests so often that it's just plain painful. Think about the steps you usually go through:
  • Write the test
  • Stop and run the test
  • Write the code under test
  • Stop and run tests
  • Refactor the code under test
  • Stop and run tests
  • Drink some coffee and repeat
NCrunch takes away all the pain and leaves a warm happy feeling behind. So you end up with:
  • Write the test
  • Write the code under test
  • Refactor the code under test
  • Be happy, drink some coffee and repeat!
Code Coverage
NCrunch collects test coverage for your code while it runs your tests.

This is shown next to your code in coloured markers showing which lines the tests touched, with marker colours indicating pass or fail status.

You can also navigate to any covering tests from any line of code, making it easy to see which tests you might impact with a change.

Full code coverage metrics are also available for your entire solution, allowing you to see where your code coverage is heavy and where it's light.

Performance Metrics
NCrunch profiles your tests during their execution to pick up the execution time of every line of code under test.

Metrics are shown inline conveniently with a tooltip, and 'hot spots' are shown with special colouring on the code coverage markers.

Inline Exception Details
The stack traces of exceptions thrown from your tests are processed by NCrunch and projected over the code coverage markers.

This makes it really easy to spot where your tests went wrong, without the information getting in your way.

No matter where you are in your source code, you'll be able to analyse problems quickly and without fuss.

Intelligent Test Execution
NCrunch tracks all sorts of test related data, and it uses it in the most intelligent way possible.

Tests that you have recently impacted with your code changes are prioritised for execution using sophisticated and high performance IL-based change mapping.

NCrunch uses a powerful weighting system designed to give you the most important feedback as fast as possible.

Distributed Processing
NCrunch can offload build and test work to other computers for processing.

Tasks are cleanly farmed out to any number of connected machines, forming grids to execute tests.

Grid servers can be shared between developers allowing teams to pool their resources.

Grids can even be scaled into the cloud to maximise testing throughput.

Distributed processing with NCrunch is highly effective, allowing concurrent execution of dozens or possibly even hundreds of tests at any one time.

show more features
Small Memory Footprint
NCrunch was built with big projects in mind.

It has been fully tested and designed to work well on solutions with potentially millions of lines of code and many thousands of tests.

An extensive range of simple configuration options allow you to tune NCrunch's CPU and memory consumption to best fit your specific needs.

Parallel Execution
Where your tests support it, NCrunch can be configured to run them in parallel across separate processes.

This can cut your end-to-end test times down by a huge factor over any normal synchronous test runners.

Tests will never be run in parallel within the same process, so there's no thread safety risks or problems with singletons.

Optimised Build Process
The NCrunch build process is heavily optimised and will only build parts of your solution that have changed, making it much faster than a standard Visual Studio or command-line build.
Smart Multiprocessor Support
NCrunch splits its processing onto separate processor cores that are not used by Visual Studio, and it will only use as much CPU as you tell it to.

This helps to ensure that the constant churning of tests won't adversely impact your coding experience in Visual Studio.

Easy Debugging
NCrunch makes it really easy to debug your tests.

You can break into a line of code with the debugger using a single context menu command or shortcut key.

Part Continuous/Manual Mode
If you don't like having all your tests run automatically, you can choose to run them manually.

NCrunch lets you create very configurable filters to choose which tests you want to run automatically, letting you use it as a manual or partially continuous test runner.

In constrained environments it is even possible to configure the engine to run only impacted tests, greatly reducing resource consumption.

Latest Releases

28 Nov 2020 / 4.6 Fixes, mostly for .NET5 support. Instrumentation mode is now Optimised by default.
12 Nov 2020 / 4.5 Added support for .NET5. Added partcover/NDepend coverage export option. VS2019.16.8 support.
28 Jul 2020 / 4.4 Minor feature release (details)