grunt plugin for running nunit


Grunt plugin for running NUnit. NOTE: this plugin requires Grunt 0.4.x.

From the same directory as your project's Gruntfile and package.json, install this plugin with the following command:

$ npm install grunt-nunit-runner --save-dev

Next add this line to your project's Gruntfile:


Inside your Gruntfile.js file, add a section named nunit, containing the test runner configuration:

nunit: {
    test: {
        // Can be solutions, projects or individual assemblies. Solutions 
        // are searched for projects referencing nunit.framework.dll. 
        files: {
            src: [
    options: {
        // The path to the NUnit bin folder. If not specified the bin 
        // folder must be in the system path. 
        path: 'c:/Program Files/NUnit/bin',
        // Runs the anycpu or x86 build of NUnit. Default is anycpu. 
        platform: 'anycpu|x86',
        // Integrate test output with TeamCity. 
        teamcity: true|false,
        // The options below map directly to the NUnit console runner. See here 
        // for more info: 
        // Name of the test case(s), fixture(s) or namespace(s) to run. 
        run: ['TestSuite.Unit', 'TestSuite.Integration'],
        // Name of a file containing a list of the tests to run, one per line. 
        runlist: 'TestsToRun.txt',
        // Project configuration (e.g.: Debug) to load. 
        config: 'Debug',
        // Name of XML result file (Default: TestResult.xml) 
        result: 'TestResult.xml',
        // Suppress XML result output. 
        noresult: true|false,
        // File to receive test output. 
        output: 'TestOutput.txt',
        // File to receive test error output. 
        err: 'TestErrors.txt',
        // Work directory for output files. 
        work: 'BuildArtifacts',
        // Label each test in stdOut. 
        labels: true|false,
        // Set internal trace level. 
        trace: 'Off|Error|Warning|Info|Verbose',
        // List of categories to include. 
        include: ['BaseLine', 'Unit'],
        // List of categories to exclude. 
        exclude: ['Database', 'Network'],
        // Framework version to be used for tests. 
        framework: 'net-1.1',
        // Process model for tests. 
        process: 'Single|Separate|Multiple',
        // AppDomain Usage for tests. 
        domain: 'None|Single|Multiple',
        // Apartment for running tests (Default is MTA). 
        apartment: 'MTA|STA',
        // Disable shadow copy when running in separate domain. 
        noshadow: true|false,
        // Disable use of a separate thread for tests. 
        nothread: true|false,
        // Base path to be used when loading the assemblies. 
        basepath: 'src',
        // Additional directories to be probed when loading assemblies. 
        privatebinpath: ['lib', 'bin'],
        // Set timeout for each test case in milliseconds. 
        timeout: 1000,
        // Wait for input before closing console window. 
        wait: true|false,
        // Do not display the logo. 
        nologo: true|false,
        // Do not display progress. 
        nodots: true|false,
        // Stop after the first test failure or error. 
        stoponerror: true|false,
        // Erase any leftover cache files and exit. 
        cleanup: true|false

MIT License