Best practices are great. They allow us to use systems that those smarter than us have laid out because they have found that they work well.
But like anything else, best practices can get misunderstood. As they go from person to person, a little gets lost. By the time the get to, I don’t know, say the 1000th person, they may have lost their meaning.
Why do you TDD?
Is it because you have found that this is the best way to build software?
Do you remember what it was like before you started using TDD?
What would happen if you built an entire application without TDD and then covered the parts that were the most important with tests after?
What about no tests at all?
Challenge yourself to think with individuality. Try new or old things and always question your conclusions.