-
Module 1: Introduction
-
What are "unit tests"
-
Why do we need unit tests
-
Integration tests vs. unit tests
-
-
Module 2: Unit testing in .NET
-
Unit testing frameworks (MSTest)
-
Basic API
-
Using test fixtures
-
Creating your first unit test
-
Unit tests organization
-
Testing for exceptions
-
Parameterized tests
-
-
Unit tests runners (MSTest)
-
How to use code coverage
-
-
Module 3: Test driven development
-
The TDD Cycle: Red-Green-Refactor
-
How to write code guided by tests
-
-
Module 4: Mocks, stubs & fakes
-
When to use fake objects
-
Value based, state based and interaction based testing
-
Using hand written fakes
-
Using Isolation frameworks
-
Create and Set behavior on new mocks
-
Using verify
-
Isolation framework comparison
-
Isolation Tips and Tricks
-
-
Using Unconstraint mocking frameworks
-
-
Module 5: Integration tests
-
How to test code that interacts with external systems
-
When should we use integration tests and when to avoid them
-
-
Module 6: Testing legacy systems
-
How to use refactoring to get the code in shape
-
Strategies when working with existing code
-
Choosing where to start
-
How to change code without braking it
-
-
Pattern of testing legacy code
-
-
Module 7: Unit testing best practices
-
Writing readable unit tests
-
Choosing what to test and what not to test
-
Supporting environment
-