I tend to over-test. Generally, I'll write a small piece of code, usually less than ten lines, run the program to make sure nothing broke, and then continue.
It may not be as efficient as writing larger chunks all at once, but it lets me narrow down the problem to a very small section when something breaks.
Comment on Re: Programming strategy with no on-going testing