Otras aproximaciones al TDD: BDD y ATDD

| Última modificación: 22 de julio de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

En este artículo vamos a explorar otras aproximaciones al TDD o Test Driven Development, más concretamente qué ofrecen las metodologías de BDD y ATDD para el desarrollo de metodologías de programas, que incluyen el testeo o comprobaciones para los extractos de código.

Cualquiera de estas podrá servirte para mejorar tus resultados y cumplir tus objetivos de forma más efectiva.

Otras aproximaciones al TDD

El TDD o Test Driven Development es una práctica que se ha integrado en las metodologías con test y comprobaciones en el desarrollo web. En términos generales, esta es una forma de desarrollo iterativa que consiste en tres etapas:

  • La primera se encarga de la realización de los test de comprobaciones que, de cualquier manera, tienen que fallar para definir cuáles pueden ser las soluciones.
  • El desarrollo de la funcionalidad sirve para hacer que el test pase de cualquier forma.
  • Por último, la refactorización del test y del extracto de código.

Por tanto, si quieres aprender más sobre el TDD ,puedes empezar creando un test que, directamente, tiene que fallar. Después, deberás desarrollar la funcionalidad hasta que el test esté en verde, es decir, hasta que pueda pasar sin ningún problema. Posteriormente, si esta funcionalidad cambia, habría que adaptar el test y esperar a que falle hasta que realicemos la refactorización.

En términos del TDD, el ciclo de las etapas se llama Red-Green-Refactor, que recoge todo lo que te hemos comentado y que, al finalizar, esperar cerrar el ciclo para pasar al siguiente requisito.

Ahora bien, ¿qué pasa si necesitamos trabajar con otra metodología? Para eso tenemos otras aproximaciones al TDD.

¿Qué es el BDD?

Otra de las aproximaciones al TDD que encontramos en el mercado es el BDD o Behavior Driven Development, un proceso de desarrollo de software basado en el testing. Este proceso busca intercomunicar a dos grupos de trabajo de un mismo proyecto, es decir, busca un lenguaje común para que la parte técnica y la parte de negocio puedan coexistir.

Entre los elementos más importantes del BDD están las pruebas de aceptación, que en Agile se conocen como historias de usuario. Además, utiliza Gherkins, que es un lenguaje de sintaxis para describir los test. Esta sintaxis permite testar totalmente la aplicación desde el punto de vista del usuario, al margen de los elementos que haya detrás.

A su vez, el objetivo principal de BDD es mostrar un lenguaje específico que te ayuda a describir el comportamiento de la aplicación, sin importar cómo se está implementado dicho comportamiento. Para ello, esquematiza el proceso en una serie de etapas, que son: issue tracker, failling scenario, coding phase, passing scenario y refactor.

¿Qué es el ATDD?

Otra de las aproximaciones al TDD es la del ATDD o Acceptance Test Driven Development. Esta metodología es más un proceso que una actividad y, según su definición, está más cerca del concepto de BDD que del de TDD. Sin embargo, se puede utilizar si quieres explorar tus conocimientos con respecto al segundo proceso.

Uno de los objetivos más importantes de ATDD es que busca que lo que se está realizando se haga de forma correcta, así como confirmar que justo eso que se está haciendo sea lo que hay que hacer.

Como las dos metodologías anteriores, ATDD también cuenta con una serie de etapas para su realización; estas son: discuss, distill, develop y demo. Muchas veces generan un punto de encuentro con las etapas del ciclo del TDD.

Ahora que conoces las otras aproximaciones al TDD, como BDD o Behavior Driven Development y ATDD o Acceptance Test Driven Development, seguro que cualquiera de ellas y sus características te ayudarán a cumplir tus objetivos para el desarrollo de programas con metodologías que incluyan test o comprobaciones.

Para seguir aprendiendo sobre estas metodologías y mucho más, no te pierdas nuestra formación intensiva en Bootcamp Desarrollo Web, con la que vas a convertirte en un desarrollador profesional en menos de un año. ¡Únete ahora y dale a tu futuro el impulso que buscas!

Alberto Casero

Alberto Casero es CTO en Watium, Fundador de Kas Factory & Coordinador del Bootcamp en Desarrollo Web.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Desarrollo Web

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado