06 Desarrollo guiado por pruebas (TDD)

Desarrollo guiado por pruebas (TDD)

Parte: Fundamentos ágiles

Sección de la Metodología Ensamble.

El Desarrollo Guiado por Pruebas (TDD) es una técnica de desarrollo de software iterativa e incremental con feedback inmediato. Favorece el proceso de aprendizaje al entender, explicar y formalizar qué es y cómo funciona algo.

Pasos del TDD

  1. Paso Rojo (Red Step): Escribir una prueba simple que falle al ser ejecutada. La idea es no caer en análisis-parálisis, teniendo algo funcionando lo más rápido posible para entrar en un flujo de trabajo virtuoso y sostenible.
  2. Paso Verde (Green Step): Implementar solo lo necesario para que la prueba pase, incluso cometiendo "pecados" de programación y diseño.
  3. Refactorizar (Refactor Step): Eliminar la duplicación creada en el paso 2, mejorando el diseño. Este paso es contextual y puede que no siempre convenga refactorizar en un proceso de aprendizaje temprano del problema.

Mediciones importantes en TDD

  • Tiempo: Medir el tiempo que lleva cada paso para obtener feedback inmediato. Cuanto más rápido se haga cada paso, mejor.
  • Cobertura: Si se aplica TDD correctamente, la cobertura del código desarrollado debería ser del 100%.

Limitaciones del TDD

  • No aplica cuando se está configurando software, instanciando frameworks, o reutilizando una solución existente.
  • No reemplaza al equipo de QA.
  • No se puede aplicar en un sistema ya desarrollado a menos que lo que se quiera desarrollar no tenga ninguna relación con lo hecho.
  • No implica buen diseño; los buenos diseños los hacen los buenos diseñadores.

← Desarrollo iterativo e incremental · Índice · Valores ágiles en la preventa →