Professional Unit Testing for IT Professionals
(SBTST, Live Instructor-Led Training, 2 days)


Dates and Pricing


Jan 8 to Jan 9, 2018$1,150/person Feb 5 to Feb 6, 2018$1,150/person Mar 5 to Mar 6, 2018$1,150/person

Outline

The Foundations of Unit Testing
Overview of Testing in an Agile Context
When is Unit Testing Valuable: Refactoring, Legacy Code and New Projects
What is Unit Testing?
When does Unit Testing Happen?
The Art of Effective Test Driven Development
Who does Unit Testing?
What are the Benefits of Unit Testing?
The Unit Test as Test Driver: Test Driven Development
What are the Tools of Unit Testing?
What is a Good Unit Test?
Creating a Unit Test
Creating a Visual Studio Unit Test Project
Setting Attributes for Unit Testing
About the Test Abstraction: Object, Class or Functional Unit
Working with Assert Statements
Creating Test Methods
Running Tests and Analyzing Results
Creating Reports
Creating Test Doubles
Overview of Available Techniques for Developing Test Doubles
When is it a Good Idea to Develop a Test Double?
Using Dummy Objects: Advantages and Disadvantages
Using Fake Objects: Advantages and Disadvantages
Using Stubs: Advantages and Disadvantages
Using Mock Objects: Advantages and Disadvantages
Practical Considerations
Isolation Concepts
What is Isolation? The Need for Decoupling
Advantages and Disadvantages of Isolation
What is a Collaborator?
Creating Fake and Dummy Objects
Creating and Using Stubs
Mock Based Unit Testing
Exploring the Need for Mock Objects
Isolation using Mock Objects
Choosing Mock Object Candidates
Implementing Mock Objects with Code
Implementing Mock Objects with NSubstitute, EasyMock or RhinoMock
Design Considerations in Choosing a Classical or a Mock Based Approach