It also ignores that test-after approaches often increase the likelihood of
unsafe refactorings, because the implementation was not designed for testability
in the first place (let's just make it work), and then there are not tests in
place to allow for a risk-free refactoring.
2 replies
This great article by @GeePawHill explains one
of the tricks when TDDing "big ideas": split them into small, easily testable
things:
https://www.geepawhill.com/2019/07/26/tdd-pro-tip-make-hard-problems-collections-of-toy-problems/
Doing that will also enable you to iterate faster on various mutations of the
big idea, existing working parts can be recombined with little effort. Because I
have the confidence that the small things keep working, I can focus on the
bigger picture.