Learning Test-Driven Development (TDD) requires putting the technical concepts into practice. This lab provides a framework for you to build a full application using TDD. You will build a To-Do List application that is implemented as a RESTful service, with To-Do items persisting in a local database. The documentation provided will walk you through implementing the first two features of the application starting from a User Acceptance Test (UAT) and emerging into a multi-layer architecture that separates the various application concerns.
This lab is intended to be the conclusion of a series of labs that teach the concepts of TDD. If you have not yet worked through the other labs in the series, that would be a good place to start, however, it is not absolutely necessary. This lab will touch on the high-level concepts of TDD as you put them into practice.
Working through the documentation will leave you with two fully implemented features, and a series of requirements that are necessary to complete the application. You may finish as many of the remaining application features as you'd like in order to practice TDD on your own or add your own features if you wish. You have full access to update the application, including the database schema, as you see fit.