# tdd-workshop
# Test Driven Development (TDD) Workshop
This short workshop explores the foundations of TDD, unit testing and refactoring.
Students will learn essential test-first approaches via interactive discussions, multimedia content, hands-on exercises.

# Learning Outcomes
* Understand the thought process and steps involved during a typical test-driven session
* Discover improved confidence and increase in development speed by writing automated tests first
* Identify poorly designed code by using our elaborate code smell vocabulary.
* Incrementally transform complex and difficult code into readable, well-structured, and well-designed code, while keeping it running at all times

# Course Outline
* Test Driven Development
  * Introduction to TDD
  * Test First Vs Test Last Vs No test
  * TDD Rhythm: Red, Green, Refactor
* Unit Testing
  * Philosophy 
  * Unit Testing Framework
  * Automated Tests & Levels of Testing
* Refactoring
  * Purpose of Refactoring
  * Refactoring Patterns
* Beyond Basics
  * Test Doubles/Fakes - Stubs, Mocks, Spy, Simulators...
  * TDD in Legacy Code
  * Breaking Dependencies in Legacy Code

Update Readme.md with course outline and purpose
Update Readme.md with course outline and purpose