Test-Driven Development

Test-driven development (TDD) is all about writing "clean code that works." It is also known as test-first coding. Here are some quotes (from Kent Beck) that intuitively describe TDD:

TDD grew out of Extreme Programming, ad evolved from the simple XP idea of "build a little, test a little" during coding. Basically, your code always has a complete set of tests that exercises its capabilities, and you write new tests as you add to your code. Practiced systematically, TDD:

Learning About TDD

To learn more about TDD, the first place to start is the following (easy to read) classic:

While the Java stuff may not apply, the basic practices and emphasis of TDD are well-presented. Next, the following two articles are required reading for getting a good overall view of TDD:

Finally, if you'd like to dig into TDD more deeply, you might find the following sources useful: