TDD with .NET Core C# - up1/training-courses GitHub Wiki
Course :: Test-Driven Development with .NET Core C#
Pre-requirement
- มีความรู้พื้นฐาน C# programming
- Visual Studio
Course Outline
-
Introduction to Test-Driven Development
- What is TDD ?
- Test-Driven Development Cycle
- Why TDD ?
-
Workshop :: Demonstrating TDD and exercise with pairing programming style
- Introduce problem of exercise
- Workshop with pairing programming style
- Summary result from workshop
-
Introduction to xUnit (Unit testing for Java)
- Structure of good unit test (GUT)
- AAA (Arrange, Act, Assert)
- xUnit life cycle
- xUnit in practice
- Data-Driven Test with xUnit
- Working with dependencies
- External APIs
- Database
- Structure of good unit test (GUT)
-
TDD in real world :: Good design for testability
- Introduction to SOLID design principle
- Single Responsibility Principle
- Open/Closed Principle
- Interface Segregation Principle
- Dependency Inversion Principle
-
Workshop :: Exercise with SOLID design principle
- Introduce problem of exercise
- Design application
- Workshop with pairing programming style
- Summary result from workshop
-
TDD in real world :: Test Double
- Introduction to Test Double
- Fake
- Stub
- Mock
- Demonstrating Test Double
-
Workshop :: Exercise with Test Double => Fake, Stub, Mock
- Introduce problem of exercise
- Design application
- Workshop with pairing programming style
- Summary result from workshop
-
Mock framework
- Introduction to Mock framework => MOQ
- Demonstrating how to use MOQ
- Workshop
-
Test Principles
- Test Principles
- Testing anti-patterns
- Singleton
- Slow test
- One big test
- Completely mocked
- Create the world