Esta pregunta es para probadores experimentados o conductores de prueba. Este es un escenario de un proyecto de software:
Digamos que el equipo de desarrollo ha completado la primera iteración de 10 características y la lanzó a las pruebas del sistema. El equipo de prueba ha creado casos de prueba para estas 10 características y estimó 5 días para la prueba. El equipo de desarrollo, por supuesto, no puede permanecer inactivo durante 5 días y comienzan a crear 10 nuevas funciones para la próxima iteración. Durante este tiempo, el equipo de prueba encontró defectos y provocó algunos errores. Los errores tienen prioridad y algunos de ellos deben corregirse antes de la próxima iteración. El problema es que no aceptarían la nueva versión con nuevas características o cambios en las características existentes hasta que se solucionen todos esos errores. El equipo de prueba dice que así es como podemos garantizar una versión estable para las pruebas si también presentamos nuevas características junto con la corrección de errores. Tampoco pueden hacer pruebas de regresión de todos sus casos de prueba en cada iteración.
Esto significa que el equipo de desarrollo debe crear una rama de código únicamente para la corrección de errores y otra rama donde continúen el desarrollo. Hay más gastos generales de fusión especialmente con refactorización y cambios arquitectónicos.
¿Puedes aceptar si este es un principio de prueba común? ¿Es válida la preocupación del equipo de prueba? ¿Ha encontrado esto en la práctica en su proyecto?