in reply to
A danger of test driven development.
I think it was Knuth who said "Every software problem can be solved with more, or less, abstraction. Experience tells use which direction is correct."
(if it wasnt Knuth, I'm sure a wiser monk will correct me oh so gently....)
Perhaps for TDD a corollary is
"Every failed test requires a change to the test, or to the code. Knowledge of the requirements tell us which choice is correct."
For some reason I have an overwhelming desire to say these with a chinese accent, and finish them with ", grasshopper"
...reality must take precedence over public relations, for nature cannot be fooled. - R P Feynmann