Test-Driven Development Purpose
Test-Driven Development is an exploration tool.
The practice is used as a discovery tool because it provides an environment for fast experimentation. Success in software comes from the quick feedback loop.
Decrease the feedback loop in all aspects of software development to increase its success¹
Our work as Software Engineering is tight to supporting a Business.
Business can exist without technology.
Having technology without a business or use case doesn’t provide much value.
The point of Test-Driven Development is to decrease one feedback loop.
The feedback should be in seconds, hours, or days.
Thus the fundamental purpose of TDD is to aid in acquiring fast feedback.
[¹]: Steve Freeman, Nat Pryce Growing Object Oriented Design Guided by Tests (https://www.amazon.com/Growing-Object-Oriented-Software-Guided-Tests/dp/0321503627)