Pruebas Perfomance: tipos y etapas
por Alejandra Hincapie - Estefania Congote, el 7 de septiembre de 2020
Las Pruebas Performance o Pruebas de Rendimiento son pruebas no funcionales que nos permiten conocer la cantidad de clientes simultáneos que soporta un producto y medir la velocidad de respuesta en la ejecución de las tareas.
Se logran simulando el entorno real de un sistema de información, donde se espera que pueda atender una alta demanda de usuarios en un tiempo especificado, para esto, se debe garantizar que las condiciones de prueba sean similares a las esperadas en el uso real.
Las Pruebas Performance nos sirven para:
- Demostrar o poner a prueba el cumplimiento de los criterios esperados por parte del sistema
- Detectar cuellos de botella
- Determinar si es suficiente el hardware para soportar la cantidad de transacciones esperadas
- Ayudar a determinar si una nueva versión está preparada para salir a producción o no
- Conocer el rendimiento real en comparación con las expectativas que se tengan.
Tipos de Pruebas Performance
Hay diferentes tipos de pruebas y todas cumplen con un objetivo diferente:
Pruebas de carga
Esta prueba se ejecuta para comprender el comportamiento de un sistema ante una carga determinada que puede ser el número de usuarios concurrentes que el cliente espera en producción, sin forzarlo a una capacidad mayor a la esperada.
Con esta prueba, la empresa puede conocer la cantidad de usuarios que verdaderamente soporta su producto, en un lapso de tiempo determinado.
Objetivo: Determinar cuáles son los flujos más críticos para implementar una mejora en los mismos y detectar posibles cuellos de botella para corregirlos y así, optimizar el rendimiento.
Pruebas de capacidad
Esta prueba sirve para evaluar el punto de quiebre del producto, es decir, determinar la carga máxima de usuarios que puede soportar un sitio web o aplicación durante un largo periodo de tiempo sin que su estabilidad sea inaceptable.
Objetivo: Verificar que no existan fallas de memoria o procesos que pierdan rendimiento tras un cierto periodo de tiempo.
Pruebas de estrés
En esta se pone a prueba la robustez y la confiabilidad del producto, sometiéndose a condiciones de uso extremas. Se incluye el envío excesivo de peticiones y la ejecución en condiciones de hardware limitadas.
Este tipo de pruebas obligará a tu aplicación a funcionar más allá de sus condiciones normales y te permitirá saber qué componentes fallan en este punto.
Objetivo: Saturar el programa hasta un punto donde aparezcan defectos potencialmente peligrosos para facilitar la configuración de alarmas del sistema cuando se alcancen ciertos límites.
Etapas de las Pruebas Performance
Etapa de planificación
Aquí es donde se define la estrategia de pruebas, fijando unos objetivos que sean medibles, concretos y evaluables; de esta manera, obtendremos la información requerida para conocer las herramientas que vamos a necesitar y podremos iniciar con el diseño de casos de prueba.
Etapa de preparación
Aquí se empiezan a obtener los datos para iniciar la creación de los escenarios y luego, se realizan unas pequeñas pruebas de humo para determinar que todo esté correctamente configurado y organizado para continuar con la siguiente fase.
Etapa de ejecución
Ejecución de los diferentes casos de prueba y/o escenarios configurados anteriormente.
Etapa de resultados
Se realiza la recopilación de la información obtenida, se analiza y se crea un informe con las conclusiones. En dicho informe, se deben ver reflejados los aspectos negativos que influyen en el sistema, de forma que puedan ser solucionados y/o mitigados.
Etapa de regresión
Después de implementar los cambios requeridos para corregir los aspectos negativos encontrados, se debe volver a realizar todo el ciclo definido con el objetivo de comparar el sistema antes y después de los cambios, para determinar si las mejoras aplicadas han sido efectivas o no.