Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / Languages / C#

A Quick Start : NUnit

2.26/5 (11 votes)
21 Feb 2008CPOL2 min read 2   183  
This article is about creating a simple NUnit Test Application

Introduction

This article shows a quick start about NUnit Testing.

Background

Before getting started, the latest version of NUnit should be installed on your computer. To download the latest version of NUnit, click the link below :

http://www.nunit.org/index.php

Also, on NUnit's official site, there are some samples and guides to NUnit.

Using the code

To use NUnit in your project, install NUnit to your computer. Then in Visual Studio 2005, create a new Class Library project. After project opens, add new reference.

framework.JPG

Browse and find NUnit directory. (As default, it is under "Program Files") Select "nunit.framework.dll" and click "OK". This allows you to add NUnit functionality to your project.

Create a new class, name it as you wish. (I named it "MathHelper") This is the class we want to test. Here you can write some methods. Below is the code I wrote.

C#
public class MathHelper
{
    public static int Add(int a, int b)
    {
        return a + b;
    }

    public static int Subtract(int a, int b)
    {
        return a - b;
    }

    public static int Multiply(int a, int b)
    {
        return a * b;
    }

    public static int Divide(int a, int b)
    {
        if (b == 0)
        {
            throw new DivideByZeroException();
        }
        return a / b;
    }
}

Then add another class which will be used by NUnit. You must use some tags, like "[TestFixture]", "[Test]"...etc. You can find more information about these tags on NUnit web site.

C#
[TestFixture]
public class TestClass
{
    [Test]
    public void AddingTest()
    {
        int result = MathHelper.Add(4, 5);
        Assert.AreEqual(9, result);
    }
}

Now, build the project and add it into NUnit GUI to test. After adding, run the test.

nunit.JPG

The green blocks mean the test succeeded. But the story is not always so happy. Let's look what happens if a test fails. Add some more code which causes test to fail into Test class.

C#
[Test]
public void DivisionTest()
{
    int result = MathHelper.Divide(4, 0);
    Assert.AreEqual(0, result);
}

The code above throws an exception due to attempt for dividing by zero. So, this snapshot shows what happens after running the test.(Don't forget to build project again after adding some code)

fail.JPG

As you can see, "AddingTest" succeeded but "DivisionTest" failed. Red bars mean one or more test fails in the test project.

Points of Interest

This quick sample shows how to write simple tests for a bunch of code. Make sure you add reference and also write "using nunit.framework;" row in your .NET project.

History

This is the first version of the article.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)