¿Qué es el TDD?

Es una metodología de desarrollo cuyo objetivo es crear primero las pruebas y luego escribir el software. Es decir, desarrollo guiado por pruebas.

Es una metodología de desarrollo cuyo objetivo es crear primero las pruebas y luego escribir el software. Sus siglas en Inglés son: Test Driven Development y en español significa: Desarrollo guiado por pruebas.

No es nada nuevo este concepto, incluso muchos de ustedes lectores tendrán menos edad que esta metodología. Fue a finales de los años 80 donde se comenzó a utilizar esta metodología de desarrollo.

Para el uso del TDD se deben combinar 2 metodologías: Test-first development (escribir las pruebas primero) y Refactoring (refactorización de código). Para esto, se usa un ciclo de desarrollo que consta de 3 partes principales:

La prueba debe fallar. (Red: Muchas herramientas muestran los fallos de las pruebas en rojo)
La prueba debe pasar. (Green: Al igual que lo anterior, las herramientas muestran las pruebas que pasan en verde)
Se debe mejorar el código. (Refactoring)
Si por alguna razón tu no refactorizas tu código, ya no se cumple con el ciclo del TDD y simplemente sería un Test-first development.

Ventajas del TDD


  • Puedes mejorar el código de tu aplicación en cualquier momento sin miedo a que dañes algo, ya que las pruebas ya las tienes listas y deberán pasar siempre.
  • Los test que realizamos sobre las interfaces de nuestra app no siempre son completos, generalmente es lo que nos acordamos probar.
  • Los equipos de testing, development y analyst serán más felices.
  • La lectura del código será mucho mejor al tener ejemplos de uso (las pruebas).

Comentarios

Entradas más populares de este blog

Dennis Ritchie, el creador del lenguaje C y UNIX

Magia...

La escala del Universo