Natalia Carretero Juárez
Competencias necesarias para
implantar BDD
en un equipo ágil
Natalia Carretero Juárez
Natalia Carretero Juárez
Competencias necesarias para
implantar BDD
en un equipo ágil
BDDescenario
given
historia
when
colaboración
lenguaje ubicuo
refactorización
TDD
ATDD
Gherkin
Cucumber
then
documentación
Regresión
dominio
¿Cuánto probar, qué probar y que no?¿Qué nombre poner
a la prueba?
¿Dónde empezar a probar?
¿Porqué falla la prueba?
HISTORIA BDD=
CARACTERÍSTICA +
CRITERIO DE ACEPTACIÓN
Título (una línea describiendo la historia)Narrativa:
Como un [rol]Yo quiero [característica]Para [beneficio]
Criterio de aceptación (presentado como escenarios)Escenario 1: Título
Dado [contexto]Y [algo más del contexto]…Cuando [evento]Entonces [resultado]Y [otro resultado]…
Escenario 2: ……
Estructura de una historia BDD
Gherkin
1. Describe el comportamiento en texto plano
2. Escribir la definición del step
3. Ejecuta y comprueba que falla
4. Escribe el código que haga que el step pase
5. Ejecuta de nuevo y comprueba que el step pasa
6. Repite los pasos 2-5 hasta que este todo en verde como un pepino
Competencias necesarias para
implantar BDD
en un equipo ágil
¿Cómo se desarrolla el ciclo de pruebas en tu equipo?
1ª Competencia necesaria
Testing está inmerso en el equipo de desarrollo
Buen control de versiones
2ª Competencia necesaria
Buen entorno de pruebas
Definir una buena
estrategia de pruebas
3ª Competencia necesaria
Testing tradicional Testing ágil
Dejar de escuchar “eso yo no lo
pedí”
4ª Competencia necesaria:
¿Qué queremos?Dejar de escuchar “eso yo no lo pedí”
“se me olvido…”
Los escenarios en BDD deben servir como
DOCUMENTACIÓN para el sistema
SOFTWARE FUNCIONANDO
sobre documentación extensiva
5ª Competencia necesaria
EQUIPOdebe ser
capaz de proporcionar
DOCUMENTACIÓN FUNCIONAL
6ª Competencia necesaria
Escenarios deben servir como
pruebas
7ª Competencia necesaria
Escenarios con el JUSTO
nivel de detalle
8ª Competencia necesaria
Escenarios deben servir como
pruebas de regresión
Buena comunicación
9ª Competencia necesaria
Tener claro qué papel juega cada persona en un proceso BDD
10ª Competencia necesaria
¿Quién define las
características?
¿Cuándo se describen
los característic
as?
¿El que realiza los feature no debe ocuparse de desarrollar
el código?
Product Owner
y cliente tienen una conversación
sobre lo que se necesita
Tester, desarrollado
r y
Product Owner
elaboran los requerimientos juntos definidos
como “escenarios”
El escenario guía a los
desarrolladores
y actúa como prueba
automatizada
5. Las pruebas automatizadas
brindan información y ayudan a
documentar la aplicación para
todo el equipo
Testers utilizan esos
escenarios para realizar las
pruebas
“Los tres amigos”
Natalia Carretero Juárez