Supongamos que un equipo Scrum necesita implementar una nueva característica.
¿Los ingenieros de control de calidad escriben pruebas automatizadas para la función al mismo tiempo que los desarrolladores escriben el código para la función? En otras palabras, los ingenieros de control de calidad aún no tienen nada que probar, pero ¿ya están escribiendo pruebas automatizadas? Entonces, es como la práctica de TDD (donde primero creamos una prueba y luego escribimos el código), ¿verdad?
¿Los ingenieros de control de calidad escriben pruebas automatizadas para la función al mismo tiempo que los desarrolladores escriben el código de la función?
Idealmente si. Necesita que las dos actividades sean realizadas por una colaboración entre desarrolladores y probadores. TDD es otra técnica que se puede utilizar. La idea es alejarse del comportamiento al que muchos están acostumbrados, que es que los desarrolladores escriban el código y luego lo pasen a los probadores, en etapas.
Si no puede lograr la colaboración que mencioné anteriormente desde el principio, o probar primero, o usar TDD, y todavía se encuentra en una fase de transición del enfoque anterior, al menos debe intentar reducir tanto como sea posible el tiempo entre escribir el código y probarlo y evitar que las pruebas se acumulen al final del sprint .
En el marco de Scrum, depende del equipo decidir cómo entregar los elementos del backlog. Muchos equipos adoptan un enfoque de estilo TDD/BDD, aunque esto suele ir acompañado de pruebas exploratorias y UAT también.
Cuando se trata de administrar TDD con integración continua, la respuesta a su pregunta es la ramificación . Normalmente se espera que los desarrolladores creen una nueva rama para el código que se va a incrementar y luego una solicitud de extracción para el código probado (incluidas las pruebas) para la revisión por pares. Todo depende de cómo trabaje su equipo, por lo que, en última instancia, esta es una pregunta que debe resolver su equipo de desarrollo.
La respuesta a esto dependerá de la historia y la definición de hecho para su organización. Podría desarrollar la prueba para una función en un sprint y la función en otro. Del mismo modo, si su definición de hecho no incluye una prueba, se puede agregar o no una prueba más adelante.
Recomendaría que se concentre en lo que quiere hacer y use scrum para ayudarlo a lograrlo, en lugar de concentrarse en lo que scrum permite o no.
Daniel
Bogdán
Daniel
Bogdán
chrylis -cautelosamente optimista-
NoEseChico
Daniel
NoEseChico