El valor de escribir el test primero

Testing, Test Driven Development, Object-Oriented Design, Design Patterns, Refactoring


Toda persona que haya investigado un poco el Test Driven Development estará familiarizada con los 3 pasos que implica:

  • Red, escribir primero un test que falla
  • Green, escribir el código de producción para pasar el test
  • Refactor, evaluar una posible mejora en la implementación
  • Y repetimos indefinidamente hasta obtener funcionalidades completas

Si bien es cierto que marcan la base del TDD, si nos quedamos ahí no estamos sino arañando la superficie. A medida que lo practicamos y adquirimos fluidez, vamos descubriendo el gran valor que nos aporta seguir estos pasos (o posibles variaciones), pues tienen su razón de ser y a menudo no se aprecia si no le dedicamos el tiempo y la atención suficientes.

Dani CAS 2019

He querido desarrollar una charla para hacer hincapié en varios argumentos sobre el por qué de escribir el test primero, en lugar de hacerlo de forma automática puesto que simplemente se trata del primer paso a seguir en el ciclo. También quise ilustrar algunos de esos argumentos con ejemplos de live coding para que se pudiera (espero) apreciar cómo el ser consciente de éstos afecta al flujo de desarrollo. Y sobretodo, intentar que se recuerde el siguiente mensaje:

  • Test Driven Development = Diseñar
  • Escribir el test primero = Pensar

Tuve la oportunidad de presentarla en esta pasada CAS 2019, y ahora se puede ver en el enlace a continuación.

Muchas gracias a la organización de la CAS 2019, a Autentia por la producción del vídeo, y a toda persona que haya apreciado la charla :)

Las slides se pueden ver en Slideshare