¿Qué son TDD y ATDD?
En este artículo, destacamos las similitudes y diferencias entre dos métodos de prueba populares comúnmente conocidos como TDD y ATDD.
TDD significa desarrollo dirigido por pruebas, mientras que ATDD significa desarrollo dirigido por pruebas de aceptación. Entender cómo funcionan estos dos enfoques de pruebas es fundamental para los profesionales de las pruebas y este post será una cartilla para empezar a descubrir ambos. Entenderás TDD vs ATDD.
¿Qué es el Desarrollo Dirigido por Pruebas (TDD)?
TDD es un sistema de desarrollo de software que sigue los principios de la Programación Extrema (XP), sin embargo con el tiempo se desprendió como una técnica de desarrollo de software independiente.
En TDD, las pruebas unitarias se llevan a cabo en el código fuente directamente.
En primer lugar, el probador escribe un caso de prueba automatizado que define la función deseada que el sistema debería realizar idealmente, pero diseña a propósito el caso de prueba de tal manera que no puede ser cumplido por el sistema en su estado actual.
En segundo lugar, el desarrollador tomará notas de las razones por las que el sistema no satisfizo la prueba y escribe el código necesario para refactorizar el sistema y permitirle pasarla en el segundo intento. Este proceso se resume en el siguiente gráfico.
El proceso de TDD continúa de esta manera, zigzagueando entre el fracaso y el éxito, de manera que cada iteración lleva al sistema a sus límites y luego le ayuda a superarlos a través de la retroalimentación que se genera.
El TDD es un experimento en el fracaso voluntario y se necesita bastante valor para envolver su cabeza en esta técnica contra-intuitiva. Sin embargo, una vez que lo haga, se verá recompensado con un método sencillo pero muy eficaz para combatir el miedo al fracaso durante las pruebas, a la vez que mejora el trabajo que realiza.
¿Qué es el Desarrollo Dirigido por Pruebas de Aceptación (ATDD, por sus siglas en inglés)?
ATDD es un método colaborativo de pruebas que obliga a todas las personas involucradas en la creación de un nuevo software (p.Por ejemplo, los probadores, los desarrolladores y los usuarios) a definir en equipo los criterios de aceptación que debe cumplir el sistema en las primeras fases del desarrollo.
El objetivo de este paso es garantizar que todas estas partes interesadas estén de acuerdo con los principales objetivos del proyecto, especialmente en lo que respecta a la funcionalidad que puede esperar el usuario final. Durante esta fase de ATDD, técnicas como los personajes de usuario y las historias de usuario pueden ser muy útiles.
Cuando las pruebas de aceptación se ejecutan finalmente en el sistema, se anotan los fallos y los desarrolladores refactorizarán entonces los componentes defectuosos escribiendo el código necesario para satisfacer los criterios de aceptación en el siguiente intento.
Este proceso se lleva a cabo de forma iterativa, normalmente al final de cada sprint, hasta que el producto final está listo para su despliegue. El gráfico siguiente lo explica.
ATDD proporciona al equipo una visión más clara de cómo funcionará el producto final, lo que permite que todos se centren en los objetivos a largo plazo en lugar de perderse en las líneas de código individuales.
En resumen
Ahora tienes una buena comprensión de las diferencias básicas entre TDD y ATDD. Estos dos métodos de prueba están estrechamente relacionados, sin embargo, ATDD también incluye pruebas de aceptación en el proceso y da más importancia a la colaboración del equipo que TDD.
Ambos enfoques encajan muy bien con los principios ágiles, ya que ambos fomentan la recopilación de comentarios para construir sobre sus errores anteriores. A medida que se refactoriza continuamente el sistema y se abordan los problemas a los que se enfrentó en el intento anterior, estos métodos le ayudan a desarrollar un producto final más valioso de manera incremental.
Únase a más de 60.000 suscriptores
Para obtener los últimos blogs, actualizaciones de la industria y consejos exclusivos.
*Su correo electrónico está seguro con nosotros, también odiamos el spam
Leave a Reply