Write Tests for People
You are writing automated tests. Congratulations! Just doing this makes you part of the early adoptions on the leading edge of software engineering practice. But are you writing good tests? How can you tell? One way is to ask "For whom am I writing the tests?" If the anwser is "For me, to save me the effort of fixing bugs." or "For the compiler so they can be executed!" then the odds are you aren't writing the best possible tests. So who should you be writing the tests for?