Test Driven Development (TDD) is a software development process in which a developer writes test of their code before writing the code itself. The test-first concept encourages repetition of very short development cycles with the writing of just enough code to pass the test.