El problema de la deuda técnica en las pruebas automatizadas fue reconocido por primera vez con el crecimiento de la automatización: cuando la cantidad de pruebas comenzó a contar por cientos y miles, su mantenimiento a menudo costó más que el propio desarrollo, y los errores arquitectónicos se multiplicaron.
En los primeros días de la automatización, las pruebas se escribían rápidamente, a menudo sin patrones, sin estándares y sin refactorización posterior. Como resultado, los repositorios de pruebas automatizadas se vuelven obsoletos, se rompen debido a cambios en la aplicación y su mantenimiento requiere cada vez más esfuerzo.
Características clave:
¿Es un alto porcentaje de cobertura de código por pruebas un indicador de la ausencia de deuda técnica?
No, la cobertura formal de código no garantiza la calidad y viabilidad de la base de pruebas: pueden existir pruebas obsoletas o "innecesarias".
¿Es suficiente escribir plantillas de pruebas automatizadas una sola vez para eliminar la deuda técnica?
No, la infraestructura y los patrones siempre requieren revisión y desarrollo a medida que el proyecto crece.
¿Se puede prescindir completamente de las pruebas manuales si las pruebas automatizadas están bien estructuradas?
No, siempre serán necesarias pruebas manuales de smoke/regresión/nicho, y las pruebas automatizadas son necesarias para el "monitoreo" regular de funcionalidades estables.
Las pruebas automatizadas se escribieron sin revisión, la estructura cambiaba a lo largo del proyecto, parte de las pruebas dejaba de ser relevante: el 40% de las pruebas fallaban debido a cambios en la aplicación.
Ventajas:
Desventajas:
En el equipo, cada dos semanas se realiza una revisión de las pruebas automatizadas y refactorización, la arquitectura se mantiene de acuerdo con los estándares adoptados, las pruebas están estrechamente relacionadas con las historias de usuario actuales.
Ventajas:
Desventajas: