Course Catalog
Curriculum Guides
Buy Courseware
Technical Library
About Object Innovations
Contact Us

877-558-7246 (toll free)  

4105. Test-Driven Development Using NUnit and C#

Rev. 4.0


An emerging software engineering paradigm is test-driven development, where tests are written early and testing is performed continuously during the development process. Problems are discovered early and corrected when they are found. This one-day course for developers explains the methodology of test-driven development and the use of NUnit in supporting test-driven development on Microsoft .NET. It is current to .NET 4.0 and Visual Studio 2010.


The course is practical, with many example programs and tests written in C#, including a cumulative case study. The goal is to quickly bring you up to speed in using NUnit in your .NET development projects. The student will receive a comprehensive set of materials, including course notes and all the programming examples.




         Understand the principles of test-driven development

         Acquire fluency in developing tests using the NUnit framework

         Efficiently exercise tests suites using both GUI and command-line tools


Duration: 1 day.


Prerequisites: The student should have a basic knowledge of the .NET Framework and experience programming in C# with Visual Studio.


1.      Test-Driven Development

What Is Test-Driven Development (TDD)?

Functional Tests / Customer Tests

Unit Tests / Programmer Tests

Test Automation

Simple Design


An NUnit Test Drive

TDD with Legacy Code


2.      NUnit Fundamentals

Structure of Unit Tests

NUnit Framework


Test Cases

Test Fixtures

Test Runners

Ignoring Tests

Setup and TearDown

Test Fixture Setup and TearDown

NUnit GUI Tool

NUnit with Visual Studio


3.      More about NUnit


Debugging NUnit Tests

Custom Asserts


NUnit Console Tool



Appendix A. Learning Resources



System Requirements


Course exercises require NUnit 2.5.2, Microsoft Visual Studio 2008, and a Windows operating system, XP or more recent. See the appropriate course Setup Guide for details.


A good minimal hardware profile for this course would have a Pentium 1 GHz or equivalent CPU, 512 MB of RAM, and at least 4 GB of free disk space for tools installation and courseware.