Scott Bain has a really nice description of how to think about a Unit Test.
“Don’t think of Unit Tests as “Tests”, but instead think of them as functional specs. Every Unit Test defines, specifies and records one proper behavior of the system”.
There is a podcast with him here:
http://www.netobjectives.com/blogs/overcoming-impediments-to-tdd-test-driven-development