The three laws of TDD


#1
  1. You are not allowed to write any more of a unit test that is sufficient to fail, and compilation failures are failures
  2. You are not allowed to write any production code unless it is to make a failing unit test pass
  3. You are not allowed to write any more production code that is sufficient to pass the one failing unit test