Desarrollo guiado por pruebas de software, o Test-driven development (TDD) es una práctica de ingeniería de software que involucra otras dos prácticas: "Escribir las pruebas primero (Test First Development)" y "Refactorización (Refactoring)".