Recommended TrainingThe Net Objectives course, Sustainable Test-Driven Development, focuses on these issues as well as the basic mechanics of TDD. Developers leave knowing now only how to use tests to drive development, but how to ensure that the value of these tests, which represent their effort, continues to return value as the suite grows without burdening the team with increasing maintenance costs.
Test-Driven Development is a powerful way for developers to approach both the design and implementation of systems. However, organizations that embrace TDD typically run into difficulties over time, once the test suites become large.
Here are two challenges they face.
These problems are so commonplace that many have concluded that TDD, while a good way to start a new project, is not sustainable over the long term. As the suite of tests grows it eventually represents such a maintenance and validation burden that the process must be abandoned.
This does not have to be the case and should not be allowed to happen. When test suites become unsustainable it is because developers have not been properly trained in how to create them. This involves: