Audience

Developers needing to become familiar with unit testing and its standards.

Prerequisites

A basic knowledge of the .NET Framework and experience programming in C# with Visual Studio.

Duration

One Day

Outline for Test-Driven Development Using Visual Studio 2008 and C# Training

1. Test-Driven Development

  • Test-Driven Development
  • Functional Tests
  • Unit Tests
  • Test Automation
  • Rules for TDD
  • Implications of TDD
  • Simple Design
  • Refactoring
  • Regression Testing
  • Test List
  • Red/Green/Refactor
  • Using the Unit Testing Framework
  • Testing with Unit Testing Framework
  • A Unit Testing Framework Test Drive
  • IQueue Interface and Stub Class
  • Test List for Queue
  • A Second Test
  • More Queue Functionality
  • TDD with Legacy Code
  • Acme Travel Agency Case Study

2. Visual Studio Unit Testing Fundamentals

  • Structure of Unit Tests
  • Assertions
  • Unit Testing Framework
  • Unit Testing Framework Namespace
  • Assert Class
  • Assert.AreEqual()
  • More Assert Methods
  • CollectionAssert Class
  • StringAssert Class
  • Test Case
  • Test Methods
  • Test Class
  • Test Runner
  • Command Line Test Runner
  • Ignoring Tests
  • Using the Ignore Attribute
  • Test Initialization and Cleanup
  • Class Initialization and Cleanup

3. More about Unit Testing Framework

  • Expected Exceptions
  • Enqueue and Dequeue
  • Tests for Enqueue and Dequeue
  • ToArray()
  • Test of ToArray()
  • Exceptions Dialog
  • Custom Asserts
  • Implementing a Custom Assert
  • Test Lists
  • Test List Hierarchy
  • Debugging Unit Tests
  • Running Tests at the Command Line
  • MSTest.exe Command Line Options
  • Test Lists at the Command Line
  • Refactoring
  • Collection Class Implementation
  • Testing the New Version