What is NUnit?

NUnit is a unit testing framework for the .NET environment. The NUnit action can be pointed to either run tests via multiple .dll files or through a .NET/NUnit project or solution.

The NUnit action is a member of the Unit Testing category.

Creating & Editing an NUnit Action

Properties

Name

The name that will be used to identify this action. Note that Name is auto-populated with the file names that are entered in the Files property.

Enabled

Only enabled actions will run when a build is executed. If an action is disabled then it will be ignored at runtime.

Files

This field can a contain single testable file or multiple testable files including .dll files, NUnit projects or .NET projects and solutions. All files specified are relative to the agent's workspace so to reference the output directory of the workspace, you only need Output\ (not $Workspace$\Output). However you can still specify absolute files such as C:\myTests and the NUnit action will point to the correct location.

This field also supports Ant Patterns to specify multiple files. For example, \Output\**tests.dll would test all .dll's that end with tests which are located in the Workspace's output folder and any of its subdirectories.

Each file/pattern must start on a new line.

Output File

When NUnit executes, the output will be stored in this file. Even when specifying multiple files to test, all of the output it put into a single file. The output file specified is relative to the agent's workspace so to reference the output directory of the workspace, you only need Output\ (not $Workspace$\Output). However you can still specify an absolute file location such as C:\myOutputFile.xml and the NUnit action will generate the output file in the correct location.

The output file must end in .xml. If it does not then .xml will be appended to the end of the output file.

Run tests in separate thread

With this checked NUnit will create a separate thread for running the tests.

Project Configuration

When Project Configuration has a value it will run the NUnit tests from either a Visual Studio or NUnit project rather then .dlls. This value tells NUnit which configuration should be used running the project (ie. Debug, Release, etc). This property must be given a value when you are running NUnit against projects.

Test Fixture

Test Fixture allows you to specify a specific test fixture to execute. You must specify the full name of the test fixture along with the containing assembly. For example: Tests.MyTests myProject.tests.dll.

If you leave this input empty then NUnit will test every fixture.

.NET Framework

Specify which version of the .NET framework should be used when running the NUnit action.

Fail action if any tests fail

If any NUnit tests fail then the build will stop and will be marked as failed. This option only affects failed tests. Note that if a test is errored then the build is stopped and marked as errored, regardless of this option.

Using

The Using drop down is populated with any property collector whose namespace matches the pattern defined by the NUnit Action. The pattern for this action is ^NUnit.*

If you create a property collector for this action, make sure you select the Path Finder PlugIn type and give it a name that will match the pattern above in blue. Example names listed here, search the table's Plugin column for "NUnit".

For more in-depth explanations on property collectors see Property Collectors.

Alternatively, you can select the Custom option from the Using drop down list and specify a path in the resulting input field that will be displayed. Please read Why it's a good idea to use a property collector before using this option.