Types of test
system / integration / functional
.notes Go see the video of Gary's "Fast test, slow test" talk.
Test one unit of code (a function or method) in something approaching isolation.
Fast, focused (useful failures).
Help you structure your code better.
Test that the whole integrated system works; catch regressions.
Slow (just write a few, test the edge cases with unit tests).
.notes Summary: both are useful, write more unit tests.