Guía para automatizar en entornos ágiles

Está de moda ser ágiles en todo y también lo está la automatización de pruebas. No son cosas muy complementarias, porque realmente hacer algo rápido, automático,  eficaz y con alto retorno en la inversión (ROI) no es tarea fácil. Por ello el tener unas pautas siempre va bien.

Tipo de aplicación que vamos a probar

El primero paso y el más importante. Puede ser una aplicación basada en la Web O una aplicación de escritorio o requiere una extensa prueba de API o migración de base de datos o una aplicación para móviles. La lista puede seguir.

No obsesionarse con las herramientas

Aunque frameworks y herramientas van de la mano en la automatización en los procesos de pruebas, no son el verdadero objetivo dónde poner el esfuerzo. Dónde hay que focalizar es en retroalimentar rápidamente los procesos de desarrollo y diseño. Esto ayuda a mantener un control de la realidad sobre el alcance del proyecto. Otro punto importante a tener en cuenta es mantener el proceso de prueba y la herramienta de datos independientes, es decir, que la herramienta seleccionada para la automatización de pruebas debería interferir mínimamente con el proceso.

No limitarse a una máquina local

La máquina local no debería ser dónde se ejecutasen las pruebas. Es crucial que todo el equipo tenga acceso, y sea capaz de ejecutar las pruebas.  También se recomienda ejecutar las pruebas regularmente y notificar periódicamente a todos, el último estado de ejecución de las pruebas. Esto asegura la robustez de la suite de pruebas.

El tiempo de ejecución del conjunto de pruebas es de gran importancia

Por experiencia, si es muy alto, seguro que a la larga dejarán de usarse. Por otro lado los casos de prueba deberían etiquetarse y ejecutarse de manera selectiva, para lanzar los test dependiendo en lo que estamos trabajando. La capacidad de ejecutar pruebas particulares ahorrará tiempo de ejecución, ejecutar un conjunto de pruebas completo no tiene mucho sentido en según que contextos.

El verde es el camino a seguir

Asegurarse que todas las pruebas se están ejecutando correctamente es esencial. Y poder ignorar rápidamente aquellas pruebas que fallan por razones previsibles, también resulta muy ágil.  Es muy importante tener en cuenta que la corrección de errores debe ser casi inmediata. También es importante verificar periódicamente los Test Suites fáciles, porque existe el peligro de que puedan crear una falsa sensación de seguridad.

Reportes simples y compresibles

Los informes aunque toman su tiempo, son un proceso extremadamente eficaz.  Si se informan de los errores de manera clara, la fijación de errores será más rápida y eficaz.