The Free On-line Dictionary of Computing (30 December 2018):
test-driven development
    (TDD) An iterative software
   development process where each iteration consists
   of the developer writing an automated test case
   for an unimplemented improvement or function, then
   producing code to pass that test and finally
   refactoring the code to acceptable standards.
   Kent Beck, who is credited with having developed or
   "rediscovered" the technique, stated in 2003 that TDD
   encourages simple designs and inspires confidence.
   TDD is related to the humourous definition of programming
   as the process of debugging an empty file.
   (2012-05-01)