V2 Documentation
Search

NCrunch Version 2 Documentation

Welcome to the official NCrunch documentation!

Here you will find resources, guides and reference material related to the installation, configuration and use of NCrunch for Visual Studio.

If this is your first time using NCrunch, it's strongly recommended that you read the Guides, along with the Considerations And Constraints within this documentation. The need for this is even more strongly emphasised if you are seeking to use NCrunch for the first time on an existing solution with a history of test driven development behind it.

Documentation Contents

Guides
Quick Start Guide Gives a quick overview of how to use NCrunch in a simple situation
Integration Testing Explains how to tackle more complicated (integration) tests with NCrunch
Performance Tuning Explains how to configure NCrunch for best performance and/or reduce system load
Distributed Processing Explains how to offload NCrunch's processing onto other computers, and/or leverage these computers to maximise performance and throughput.
Console Tool Usage Explains how to set up and use the NCrunch Console Tool, a headless version of NCrunch designed for use on build servers.
Concepts
Code Coverage Suppression Describes how to suppress NCrunch's code coverage analysis for specific regions of code
Engine Modes Describes the 4 built-in 'engine modes' used to control NCrunch's behaviour, along with how to create your own engine mode
Ignored Tests Explains how to prevent NCrunch from executing certain tests by using its built-in 'ignore' feature
Parallel Execution Describes NCrunch's behaviour when running tests in parallel, and how to to enable this feature
Pinned Tests Explains how to 'pin' tests to the Tests Window and how this can be useful in day-to-day development
Processing Queue Describes the NCrunch processing queue along with its purpose and how to read it
Risk And Progress Bar Describes the Risk/Progress bar and how to use it
Test Categories Explains how to categorise tests in all test frameworks supported by NCrunch
Test Pipeline Explains how the core engine of NCrunch functions and processes tests
Test Timeouts Explains why test timeouts are important when using NCrunch, and how to control them
Tests Window Introduces the NCrunch Tests Window along with its various features
Workspaces Describe how NCrunch shadows the solution loaded into Visual Studio, and how it creates build/test environments
Considerations And Constraints
Absolute File References Explains how absolute file path references from code can create problems for NCrunch and how to solve these issues
Assembly Co-location Assumptions Explains how code that assumes output assemblies to be co-located can fail when executed by NCrunch and how to work around this
Concurrent Use Of Test Resources Explains how some integration tests can cause problems when set to run in parallel by NCrunch, and how to resolve these problems
Cross Application Domain Testing Explains the implications of executing tests that span multiple process or application domains using NCrunch
Heavily Executed Code Under Test Explains how to deal with code under test that is very heavily executed and/or performance critical
Implicit File Dependencies Explains how file references that are not made obvious to NCrunch can create runtime and build issues, and how to resolve these issues
Multi Threaded Tests Explains the implications of tests that execute across multiple threads, and gives suggestions on how to best control these tests
Project Atomicity Explains why project atomicity is important, and how complex or implicit relationships between projects can create problems
Project Build Platform And Configuration Explains the configuration and platform differences between the NCrunch build process and the build process controlled by Visual Studio
Test Atomicity Explains certain testing situations that can behave differently under NCrunch, stressing why test atomicity is important and giving examples of how to resolve specific issues
Using NCrunch With Source Control Explains how to make best use of NCrunch when working with a source control or version control system
Reference
Global Configuration Describes NCrunch's global configuration and its various settings
Solution Configuration Describes NCrunch's solution-level configuration and its various settings
Project Configuration Describes NCrunch's project-level configuration and its various settings
Runtime Framework Describes the NCrunch features made available through the use of the optional NCrunch.Framework library
Troubleshooting
Compatibility Mode Describes a configuration set that can be useful in deductively analysing problems
Installation And Setup Problems Explains how to resolve installation and setup problems
Missing Code Coverage Explains how to resolve and understand situations where code coverage is not shown as expected
NCrunch Specific Overrides Explains how to introduce alternative build and/or runtime behaviour for code running under NCrunch
Project Build Issues Explains how to resolve issues with projects that fail to build under NCrunch
Test And Runtime Related Issues Explains how to resolve issues with tests not behaving as expected under NCrunch
Tests That Build Their Own Appdomains Demonstrates a pattern for solving issues with cross-application domain tests
X86 X64 Platform Issues Describes how to resolve problems related to CPU architecture within NCrunch's build and test environment
Tools
Console Tool Describes the NCrunch Console Tool in detail.
Other
Keyboard Shortcuts Lists the default shortcut keys available when using NCrunch
Manual Installation Instructions Describes how to install NCrunch manually in VS2010 and VS2012.