Introducción al Desarrollo Basado en Tests (TDD) con un caso práctico

La TDD es una técnica que afecta decisivamente a la calidad del código fuente.

El objetivo básico es escribir el código de modo que siempre existan tests automatizados para verificar que funciona, facilitando la detección de problemas introducidos a posteriori durante la evolución del mismo.

Pero esto es solo el comienzo: la idea es conseguir que los tests nos ayuden no solo a detectar y corregir errores (lo que no es poco), sino que nos ayuden a evitarlos. Esto es así porque escribir los tests antes de escribir el código nos ayudará a pensar en todo lo que puede ir mal antes de que escribamos el código fuente e introduzcamos el error en el mismo. Prevenir siempre será mejor, y más económico, que curar.

En esta cápsula o charla se exponen las claves del Desarrollo Basado en Tests (TDD, Test Driven Development), una práctica que muchos consideran clave para que los proyectos ágiles que usan XP, Scrum y similares no colapsen a medio plazo.

El enfoque de esta cápsula es eminentemente práctico, con énfasis en la creación de código real durante la exposición, compartiendo el conocimiento adquirido en las trincheras de la TDD en los últimos 12 años.

A quién está dirigido

Cualquier persona que lidere o se encuentre inmersa en un proyecto ágil y conozca la dificultad de sostener un ritmo regular en las Iteraciones o Sprints encontrará la TDD una herramienta clave para estabilizarlos.

Esta cápsula también será útil a programadores, equipos y proyectos que, aunque no utilicen procesos ágiles, tengan la necesidad de crear código extremadamente robusto y fiable y/o fácilmente modificable.

Por último, está dirigida a cualquier programador que no se contenta con la calidad de su código actual o que desee escribir código con el que se sienta confortable cuando sea leído a fondo por terceros.

Contenido

Duración

Esta cápsula está diseñada para tener una duración de entre 2 y 4 horas (una o dos sesiones).

Ponentes

Pedro Agulló Soliveres, dedicado a la introducción y coaching de metodologías ágiles y creador en su tiempo libre de OpenSource (DirectJNgine, log4js-ext).