The false dichotomy of tests

It’s a conversation which seems to crop up again and again, and provoke a mixture of assumptions and opinions. Here’s Gojko Adzic‘s take on what is a unit test, and what is an acceptance test.

Gojko Adzic » The false dichotomy of tests.

For me, an “acceptance test” is a concrete expression of one or more particular acceptance criteria, typically formulated as a story or use case with explicit (and ideally customer-supplied) values. Everything else is is just a (development) test, regardless of how much or how little of the system it exercises. I see no particular value in separate names and arguments over whether something is a “unit” test, an “integration” test, a “story” test, or whatever.