Also, in order for your tests to be worth beans, write them before you write the code they test. If tests are written after the code, knowledge of the code's functioning will tend to taint the tests, making them much less useful. When you code your tests in advance, you can be sure they're right.
--