
¿Por qué hacer pruebas automatizadas?
Hace poco me encontré con un meme que se burlaba del esfuerzo que debe realizarse para automatizar una funcionalidad, y que a veces hubiera sido más fácil probarla manualmente. Entonces me puse a investigar cuánta razón podría tener el meme (generalmente puede encontrarse mucha razón en los memes) Ciertamente, cuando un equipo de desarrollo se propone integrar la automatización de pruebas lo primero es crear un plan de automatización, considerando cuáles son los objetivos, y los problemas a resolver con la automatización.
Uno de los problemas más comunes que se suele atacar con la automatización es disminuir el tiempo dedicado a las pruebas de regresión e integración. Cuando en los proyectos, los equipos suelen subir funcionalidades nuevas constantemente, como por ejemplo en equipos que utilizan el framework SCRUM, los especialistas de calidad dedican bastante tiempo en probar viejas funcionalidades que pudieron haberse dañado al integrar las nuevas funciones.
Las pruebas de automatización serían un gran aporte en este escenario. Tener test automatizados para funcionalidades críticas y muy utilizadas facilitaría estos procesos de retroceso al integrar las cosas nuevas.
Entonces, el meme tenía razón, no siempre es factible realizar pruebas automatizadas, no siempre es necesario automatizar y no siempre se obtiene ganancia al automatizar. Pero, la automatización de pruebas, sobre todo en equipos ágiles, es un paso determinante en el aseguramiento de la calidad y en la optimización del tiempo del equipo. Simplemente no puede perderse el foco del objetivo de automatizar y del plan de automatización que se ha definido porque no todas las funcionalidades de un proyecto es necesario automatizarla en todos los casos.