Saturday, January 10, 2009

Code Complete

Clean test - a test which simply verifies that the end state of the 'happy path' use case can be reached

Dirty test - such a test exercises code which processes error states and boundary condition violations, i.e., 'unhappy path' use cases

Immature testing organizations write five clean tests for each dirty test.  Mature testing organizations write five dirty tests for each clean test.  See Steve McConnell's 'Code Complete' and Robert L. Glass's 'Facts and Fallacies of Software Engineering'.