TDD with C# - up1/training-courses GitHub Wiki

Course :: Test-Driven Development with C# (.Net core)

Pre-requirement

  • มีความรู้พื้นฐาน C#
  • ใช้งาน Visual Studio สำหรับ .Net core

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 Unit test
    • Structure of good unit test (GUT)
    • Life cycle of unit test
    • Data-Driven Testing
    • Working with database
  • Workshop with unit test
  • TDD in real world :: Good design for testability
    • Introduction to SOLID design principle
    • Single Responsibility Principle
    • Open/Closed Principle
    • Interface Seggregation 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
    • Demonstrating how to use mock framework
    • Workshop
  • Test Principles
    • Test Principles
    • Testing anti-patterns
      • Singleton
      • Slow test
      • One big test
      • Completely mocked
      • Create the world