Course Code: bspautnt
Duration: 7 hours
Prerequisites:

The student should have a good knowledge of the .NET Framework and experience programming in C# with Visual Studio. A basic course in Unit Testing, Test-Driven Development Using Visual Studio and C#, is recommended.

Overview:

Overview

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 introduces advanced tools and methodologies of test-driven development that come with Visual Studio 2012 Ultimate, and illustrates the use of the techniques in the real-life projects.

 

The course is practical, with many example programs and tests written in C#, including a cumulative case study. The goal is to demonstrate unit testing in real world .NET development projects including tiered service-oriented applications. The student will receive a comprehensive set of materials, including course notes and all the programming examples.

Learning Objectives

  • Understand Code Coverage tools and metrics
  • Acquire fluency in code isolation techniques
  • Efficiently use Microsoft Fakes framework for code isolation
Course Outline:
Code Coverage
  • Coverage
  • Block Coverage
  • Branch Coverage
  • Line Coverage
  • Collecting Coverage Data
  • Selecting Coverage Units
  • Coverage Visualization
  • Coverage Analysis
Isolation Techniques
  • Structure of Unit Tests
  • Unit Testing Framework
  • Assertions
  • Test Cases
  • Test Fixtures
  • Test Runners
  • Ignoring Tests
  • Initialization and Cleanup
Microsoft Flakes
  • Adding Fakes
  • Stub Classes
  • Stub Methods
  • Stub Properties
  • Shims
  • Shims Context
  • Class Shims
  • Methods Shims
  • Default Behavior
  • Global Shims
  • Static Methods