Rather than simply presenting nUnit, this article goes out of its way to illustrate the concepts behind test-driven development. The basic premise:
- Write a test.
- Run the test. It fails to compile because the code you’re trying to test doesn’t even exist yet! (This is the same thing as failing.)
- Write a bare-bones stub to make the test compile.
- Run the test. It should fail. (If it doesn’t, then the test wasn’t very good.)
- Implement the code to make the test pass.
- Run the test. It should pass. (If it doesn’t, back up one step and try again.)
- Start over with a new test!
It also highlights using Mock Objects… a very good read.