Pruebas de Regresión: 6 Recomendaciones para una buena planificación

Adriana Chavarria | 19 de noviembre, 2018

Apoyado por nuestro experto en innovación João Caleffi

La prueba de regresión consiste en probar un sistema que ha sido  analizado previamente para asegurar que no se haya introducido algún tipo de  defecto  como resultado de cambios realizados. ( ISTQB, 2017).

La planificación de estas pruebas no es tan sencilla, especialmente cuando el tiempo y los recursos son limitados. Como consecuencia de esa limitación, se genera presión y  los planes de pruebas suelen acortarse o se pierde tiempo en el ajuste ocasionando un aumento en la probabilidad de fallo humano al no seleccionar casos más adecuados.

A continuación, le detallamos los 6 aspectos indispensables que puede tener en cuenta:

1) Planificación previa

Desde el inicio de la estimación de casos de prueba, es aconsejable asignar prioridades de ejecución: Alta, Media, Baja y palabras clave como Regresión, Sanidad, etcétera para los casos de prueba. De esta manera se puede hacer un filtrado rápido por prioridades y etiquetas, que permitan diferenciar rápidamente cuáles deberían ser los casos más importantes.

2) Uso de técnicas de diseño de casos de prueba

Entidades como International Software Testing Qualifications Boardy American Society for Quality mencionan varias técnicas para la creación de casos de prueba que permiten una mejora,de tal manera que al aplicarlas se obtienen menos casos de prueba y un mayor factor de cobertura o bien una base de creación empírica.

Al tener un menor número de casos de prueba, se reducen las pruebas exhaustivas y tiempos de ejecución.

3) Clasificación adecuada mediante suites

La división de casos de prueba según los módulos de un sistema, facilitará la selección de casos al momento de construir un Plan de Pruebas para Regresión.

En las carpetas o suites deberían evitarse nombres ambiguos o diferentes a lo definido en el requerimiento, o en los nombres que se muestran en el sistema.

Si la herramienta de manejo de casos de prueba lo permite, lo ideal es organizar las suites mediante jerarquías según la misma aplicación para que la selección de casos de prueba por componente pueda ser natural. Por ejemplo, si el módulo "Transferencias" tiene como opciones "Transferencias locales", "Transferencias a terceros", "Transferencias internacionales", debería existir un folder padre llamado "TRANSFERENCIAS", con 3 carpetas hijas, de manera tal que la carpeta llamada "Transferencias" tenga como opciones "Transferencias locales", "Transferencias a terceros", "Transferencias internacionales".

Este tipo de organización es útil para mantener los casos de prueba ordenados y agilizar la búsqueda de casos de prueba. Sin embargo, no se debe abusar de la jerarquía, pues llegar a tener más de 4 ó 5 niveles de profundidad se torna poco eficiente.  

4) Programación de mantenimientos

Conforme nuestra aplicación crece o sufre cambios y mejoras, se hace más necesario dedicar tiempo a revisar si estos cambios afectan nuestros casos actuales, invalidándolos o requiriendo actualización. Si sabemos que el cambio los afectará, se deberían incluir tareas de actualización.

Si estamos bajo un modelo de un sistema antiguo con casos que nunca han tenido mantenimiento, se recomienda incluir tareas periódicas para la revisión de todos los casos existentes.

5) Definición del tipo de Regresión a realizar

No todas las pruebas de regresión implican una ejecución del 100% de los casos de prueba (Full Regression). En muchos casos, los cambios realizados afectan componentes específicos por lo que la regresión podría centrarse en esos módulos y la verificación del resto del sistema podría realizarse con una prueba de humo.

En estos casos es necesario un análisis de dependencias para tener certeza de que los cambios por aplicar efectivamente no afectan otras partes no contempladas en la regresión del componente.

6) Automatización

Las pruebas de regresión suelen ser procesos largos y al incorporar pruebas de automatización se consiguen varias ventajas.

Primeramente, la capacidad de ejecución aumenta, al tiempo que la duración de las pruebas se reduce.

Los scripts pueden ejecutarse tantas veces como se requiera sin que esto implique desgaste en el equipo.

Asimismo, se pueden incorporar diferentes ambientes en la prueba sin que esto aumente el tiempo de las mismas, pues pueden ejecutarse en paralelo.

¿Cómo lograr un plan de regresión eficaz?

Lo primero es contar con un suite lo suficientemente robusto que se pueda ejecutar en un tiempo definido y que contenga los casos de prueba con mayor probabilidad de encontrar un fallo.

Además, es importante planificarlo desde las primeras etapas de los casos de prueba. Si hablamos de una Regresión parcial y no hemos seguido ninguna de las recomendaciones dadas, lo mejor será confiar que nuestro equipo pueda elegir los casos de prueba indicados teniendo en cuenta que esto llevará tiempo.

Finalmente, buscar estrategias complementarias de cobertura, como Bug Verification  y pruebas exploratorias podrá darnos mayor confianza en la prueba.

Contáctenos

Contenido

Compartir Artículo

Artículos Destacados