Question: why tdd is so painful?
Answer: When mocking external dependencies, you inevitably introduce more code, which itself leads to a less maintainable solution. All this results in increasing of maintenance costs, or, simply put, pain for developers. If you enjoyed this article, be sure to check out my Pragmatic Unit Testing Pluralsight course too.