Cuestionario BDD / TDD Flashcards
Indique si la siguiente afirmación es verdadera o falsa y justifique su respuesta
TDD es una técnica que solo puede aplicarse cuando se trabaja con un lenguaje orientado a objetos.
Falso
Magui : TDD es una técnica con un enfoque iterativo de escribir pruebas tanto de aceptación como unitarias antes de escribir el código (ciclo grande y ciclo chico), su clave no es el paradigma de la programación sino que se encuentra en los test previos al código.
Bruno : TDD es una técnica que guía el desarrollo y bajo su premisa de “test que falle, código que lo implemente, refactor de ser necesario” no se hace referencia al uso estricto y exclusivo de objetos.
Código escrito bajo cualquier paradigma puede ser testeado, por lo que realizar TDD es plausible para otros paradigmas fuera de POO.
Mientras se pueda contar con una manera de hacer tests unitarios, TDD se puede aplicar a cualquier lenguaje.
El uso de BDD permite que se pueda prescindir de la técnica TDD.
Falso
El principal aporte de la técnica BDD es la automatización de las pruebas de aceptación de usuario
Falso
Indique todas afirmaciones que aplican sobre TDD
- Para su aplicación es necesario contar con un servidor de integración continua
- Propone un desarrollo iterativo de la solución
- No es posible aplicarla al trabajar con un proceso Waterfall
- Es una de las prácticas de Extreme Programming
❌ Para su aplicación es necesario contar con un servidor de integración continua
✅ Propone un desarrollo iterativo de la solución
❌ No es posible aplicarla al trabajar con un proceso Waterfall
✅ Es una de las prácticas de Extreme Programming
Test-Driven Development es una técnica de testing
Falso
Indique todos los beneficios de TDD
✅Permite obtener un alto nivel de cobertura
✅Asegura que el código resultante sea testeable
❌ Asegura que el código resultante tendrá buena performance
❌ Facilita el uso de pair-programming
El flujo de trabajo propuesto por TDD implica
Escribir un test, Escribir el código mínimo para que el test pase, refactorizar (si se considera necesario)