Gratification
					TDD is an investment
				Evolution
					Lasse Koskela in "TDD and Acceptance TDD"
					
						“TDD is a technique that evolves together with the practitioner.”
					
				Level 1
					Benefits
					- High code coverage
- Short feedback loop
- Regression testing
Level 2
					Working with tasks
				Level 2
					Evolving task list - 1
					- Skip not defined account
- Skip not configured account
- Email sent - create a task
- Support email unsubsribed
Level 2
					Evolving task list - 2
					- Skip not defined account
- Skip not configured account
- Email sent - create a task
- Support email unsubsribed
Level 2
					Evolving task list - 3
					- Skip not defined account
- Skip not configured account
- Report error on wrong mapping
- Email sent - create a task
- Support email unsubsribed
Level 2
					Evolving task list - 4
					- Skip not defined account
- Skip not configured account
- Report error on wrong mapping
- Email sent - create a task
- Support email unsubsribed
Level 2
					Cucumber
					
Scenario: Customer has a broker policy so DOB is requested
  Given I have a "Broker" policy
  When I submit my policy number
  Then I should be asked for my date of birth
  					
				Level 2
					Benefits
					- Focus on requirements
- Tests are executable specification
Level 3
					
						“Show me your tests, and I will tell you everything about your production code.”
					
				Level 3
					Benefits
					- Code easy to rewrite
- Clean architecture
 
		
					TDD
					Build better software
					
						Created by Michał Lewandowski / @lewandm4