Creative destruction vs. TDD: can't we all just get along?

Short Form


A summary of when to use what style of testing, and the guidelines, tools and attitude(s) that make your tests more effective.


Waterfall: a good test is one that uncovers a previously-unknown bug. Attitude: creative destruction.

Agile/TDD: a good test is one that accurately and adequately describes the desired behavior. Attitude: tech writer/time traveller.

Tools used in a waterfall environment include formal requirements, test plans, and a big Gantt chart. Tests are black-box-heavy. TDD testers use continuous integration and other automated tools to run the unit tests, which are mostly white-box tests.

Where is the intersection?

Speaking experience

This is a new talk, though I'll be testing it at barcamp. I've done QA training at several companies and as part of a couple of contracts, and I've heard no complaints. I presented a short-form talk on geek fitness at OSB2011, which was not recorded.