TDD is a software development methodology in which test cases are created to specify and validate what the code will accomplish.