Test Driven Development (TDD)

Test Driven Development (TDD) is a software development technique that combines Test First Development (TFD) with refactoring. The goal of test driven development is split between multiple points of view: code specification, not validation; in other words, is a way of thinking from the requirements or designs point of view before we can write functional code (TDD is an agile requirement and an agile design technique). Another point of view is that TDD represents a programming technique of writing clean and functional code.