TDD Gives You a Tractable Task Board
- Kent's personal mission: help geeks feel safe in the world
- Test as a oracle to predict if your change is safe or not
- The War of Art
- If you can predict an error, it's the same as passing
- TDD gives you a tractable task board
- You don't need to know how to implement a thing before writing a test. Having a test case is better than having nothing.
- Write your first test no matter how bad it is.
- You will know how to write a better one next time.
-- from 024 - Kent Beck, Author of Test-Driven Development: By Example - The Ruby Testing Podcast
I also use TDD as a task board, i.e.
- write down descriptions for all the cases I need to test
- then fill-in the body and make these tests pass one by one
- if I think of something that needs to be added, I add a description and come back to it after I finish all the description I have
It's a simple and lightweight GTD system. So I don't need to leave my code to track my todos.
I learned this technique from The World's Best Intro to TDD, Level 1: TDD Done Right - jbrains.c. And I recommend you to give it a shot.