We write acceptance tests to make the customer feel confident
Here’s the principle: we write Acceptance Tests to help the Customer feel confident that we understand what they wanted and have built it; we write Programmer Tests (microtests, mostly) to help ourselves (the programmers) feel confident in each piece of code that we write.
- J.B. Rainsberger at The Code Whisperer