Naming convention mistakes (e.g. tesSomeReallyComplexCondition()) can prevent tests from running
tesSomeReallyComplexCondition()
Whole test cases can be accidentally omitted from a suite.
Complicated conditions inside a test method can keep part of the tests from being reached.