You find an error during FunctionalTest''''''ing. Rather than just fix it, you: * Pinpoint it in the code * Write the unit test that doesn't run, but if it did you believe the functional error will be resolved * Make the UnitTest work * Re-run the FunctionalTest to be sure the error is resolved This is better than simply fixing the FunctionalTest, because: 1. You are more focused when fixing the defect. You have to make a specific, concrete hypothesis about the source of the error. You can't just go around adding one and negating until the functional test runs. 2. You now have a UnitTest (likely to be run more often than a FunctionalTest) that will blow up if the error recurs ---- CategoryTesting