3 min lectura • Guide 740 of 877
Test-Driven Development con GitScrum
TDD no es solo sobre testing - es sobre diseño y confianza. GitScrum soporta workflows TDD con tracking de tareas que refleja el ciclo red-green-refactor.
Fundamentos de TDD
CICLO RED-GREEN-REFACTOR:
┌─────────────────────────────────────────────────────────────┐
│ │
│ ┌────────────┐ │
│ │ RED │ ← Escribe test que falla │
│ │ (Test │ "¿Qué debe hacer el código?" │
│ │ Fallando) │ │
│ └─────┬──────┘ │
│ │ │
│ ▼ │
│ ┌────────────┐ │
│ │ GREEN │ ← Escribe código mínimo para pasar │
│ │ (Test │ "Hazlo funcionar, nada más" │
│ │ Pasando) │ │
│ └─────┬──────┘ │
│ │ │
│ ▼ │
│ ┌────────────┐ │
│ │ REFACTOR │ ← Mejora sin romper tests │
│ │ (Código │ "Hazlo limpio" │
│ │ Limpio) │ │
│ └─────┬──────┘ │
│ │ │
│ └──────────→ Repetir │
│ │
│ TIEMPO DE CICLO: Minutos, no horas │
│ │
│ REGLAS CLAVE: │
│ • Nunca escribas código sin un test que falla │
│ • Escribe el código mínimo para pasar │
│ • Refactoriza solo cuando tests están verdes │
│ • Corre tests frecuentemente │
└─────────────────────────────────────────────────────────────┘
Beneficios de TDD
POR QUÉ FUNCIONA TDD:
┌─────────────────────────────────────────────────────────────┐
│ │
│ BENEFICIOS DE DISEÑO: │
│ • Te fuerza a pensar en interface primero │
│ • Lleva a código modular, testeable │
│ • Detecta problemas de diseño temprano │
│ • Resulta en diseños más simples │
│ │
│ BENEFICIOS DE CALIDAD: │
│ • Bugs detectados inmediatamente │
│ • Alta cobertura de tests naturalmente │
│ • Protección contra regresiones │
│ • Confianza para refactorizar │
│ │
│ BENEFICIOS DE PRODUCTIVIDAD: │
│ • Menos tiempo debugging │
│ • Feedback más rápido │
│ • Código autodocumentado vía tests │
│ • Integración continua más confiable │
│ │
└─────────────────────────────────────────────────────────────┘
TDD en GitScrum
TRACKING TDD EN GITSCRUM
════════════════════════
STORY CON TDD:
┌─────────────────────────────────────────────────────────────┐
│ │
│ PROJ-150: Calcular Descuentos de Orden │
│ │
│ DEFINITION OF DONE: │
│ ☑ Tests escritos primero │
│ ☑ Código pasa todos los tests │
│ ☑ Código refactorizado │
│ ☑ Code review completado │
│ │
│ SUBTAREAS: │
│ ☑ [TDD] Test: descuento porcentaje básico │
│ ☑ [TDD] Test: descuento cantidad fija │
│ ☑ [TDD] Test: múltiples descuentos │
│ ☑ [TDD] Test: límites de descuento │
│ ☐ Refactor final │
│ │
└─────────────────────────────────────────────────────────────┘