Automatización de pruebas funcionales

LIBP-0171 (Libro de pautas)

Pautas

TítuloCarácter
Grabación de pruebas funcionalesRecomendada
Evaluación de la automatizaciónRecomendada

Grabación de pruebas funcionales

Los test realizados para las pruebas funcionales deben ser grabados para su posible reutilización como pruebas de regresión.

Las pruebas funcionales deben ser grabadas con una herramienta para este fin. En caso de que el aplicativo funcione correctamente de acuerdo a las especificaciones, los test que han sido grabados a través del uso de la herramienta son almacenados y podrán ser usados luego para el lanzamiento automático de pruebas de regresión.

Evaluación de la automatización

Es necesario evaluar si el esfuerzo invertido en la automatización de los test es rentable frente al beneficio obtenido:

  1. Cambios previstos en la aplicación: No es aconsejable realizar la automatización cuando se prevén cambios ya que la vida de la prueba automatizada es muy corta. El objetivo al automatizar una prueba es que tenga una vida de varias ejecuciones, para que el tiempo invertido en la automatización sea rentable frente al tiempo ganado a la hora de ejecutar las pruebas manualmente.
  2. Exhaustividad de las pruebas: En casos en los que la ejecución de los tests se espacien mucho en el tiempo, y las pruebas a automatizar sean pocas, no se va a recuperar el tiempo invertido en la automatización de las mismas.
  3. Entornos a certificar: para valorar este punto, tambien se debe tener en cuenta el anterior. Es posible que las pruebas a realizar en una aplicación sea necesario ejecutarlas sobre diferentes entornos de despliegue (distintos navegadores, servidores de aplicaciones, versiones de software). En este caso aunque el numero de pruebas sea reducido (y pueda pensarse que no es optimo automatizarlas), se debe repetir varias veces su ejecución por lo que puede compensar su automatización.

Así teniendo en cuenta estos puntos y una vez visto si es recomendable la automatización, el siguiente paso es estimar el coste de la misma para poder compararlo con el coste que tendría no realizar la automatización, con lo que podemos esbozar un criterio amplio y general que ayude a decidir si la automatización es rentable.