Requisito previo: tipos de pruebas de software
Pruebas de estréses una técnica de prueba de software que determina la robustez del software mediante pruebas más allá de los límites de la operación normal. Las pruebas de estrés son particularmente importantes para el software crítico, pero se utilizan para todo tipo de software. Las pruebas de estrés enfatizan la solidez, la disponibilidad y el manejo de errores bajo una carga pesada en lugar de lo que es el comportamiento correcto en situaciones normales. Las pruebas de estrés se definen como un tipo de prueba de software que verifica la estabilidad y confiabilidad del sistema. Esta prueba determina particularmente la robustez del sistema y el manejo de errores en condiciones de carga extremadamente pesada. Incluso prueba más allá del punto de funcionamiento normal y analiza cómo funciona el sistema en condiciones extremas. Se realizan pruebas de estrés para garantizar que el sistema no se bloquee en situaciones críticas. Las pruebas de estrés también se conocen comoPruebas de resistencia o pruebas de tortura .
Características de las pruebas de estrés:
- Las pruebas de estrés analizan el comportamiento del sistema después de una falla.
- Las pruebas de estrés aseguran que el sistema se recupere después de una falla.
- Comprueba si el sistema funciona en condiciones anormales.
- Garantiza la visualización de mensajes de error apropiados cuando el sistema está bajo estrés.
- Verifica que las fallas inesperadas no causen problemas de seguridad.
- Verifica si el sistema ha guardado los datos antes de fallar o no.
Proceso de Prueba de Estrés: Tipos de Pruebas de Estrés:
- Prueba de estrés servidor-cliente : en esta prueba de estrés, la prueba se lleva a cabo en todos los clientes del servidor.
- Pruebas de estrés del producto : las pruebas de estrés del producto se concentran en descubrir defectos relacionados con el bloqueo y bloqueo de datos, problemas de red y congestión del rendimiento en un producto de software.
- Pruebas de estrés de transacciones : las pruebas de estrés de transacciones se realizan en una o más transacciones entre dos o más aplicaciones. Se lleva a cabo para afinar y optimizar el sistema.
- Pruebas de estrés sistemáticas : las pruebas de estrés sistemáticas son pruebas integradas que se utilizan para realizar pruebas en varios sistemas que se ejecutan en el mismo servidor. Se utiliza para descubrir defectos en los que los datos de una aplicación bloquean otra aplicación.
- Pruebas de estrés analítico : las pruebas de estrés analítico se realizan para probar el sistema con parámetros o condiciones anormales que es poco probable que sucedan en un escenario real. Se lleva a cabo para encontrar defectos en escenarios inusuales como una gran cantidad de usuarios conectados al mismo tiempo o una base de datos que se desconecta cuando se accede a ella desde un sitio web.
Herramientas de prueba de estrés:
- Jmetro
- corredor de carga
- Probador de estrés
- Carga Neo
Métricas de las pruebas de estrés:
Las métricas se utilizan para evaluar el rendimiento del estrés y generalmente se realizan al final de los scripts o pruebas de estrés. Algunas de las métricas se dan a continuación.
- Páginas por segundo: número de páginas solicitadas por segundo y número de páginas cargadas por segundo.
- Páginas recuperadas: tiempo promedio necesario para recuperar toda la información de una página en particular.
- Byte recuperado: se tarda un tiempo medio en recuperar el primer byte de información de la página.
- Tiempo de respuesta de la transacción: el tiempo promedio que se tarda en cargar o realizar transacciones entre las aplicaciones.
- Transacciones por segundo: cuenta la cantidad de transacciones cargadas por segundo con éxito y también cuenta la cantidad de fallas que ocurrieron.
- Falla de Conexión: Cuenta la cantidad de veces que el cliente enfrentó la falla de conexión en su sistema.
- Fallo de Intentos del Sistema: Cuenta el número de intentos fallidos en el sistema.
- Rondas: Cuenta la cantidad de condiciones de prueba o script ejecutadas por los clientes con éxito y realiza un seguimiento de la cantidad de rondas fallidas.
Ventajas de las pruebas de estrés:
- Las pruebas de estrés determinan el comportamiento del sistema después de una falla y aseguran que el sistema se recupere rápidamente.
- Las pruebas de estrés garantizan que la falla del sistema no cause problemas de seguridad.
- Las pruebas de estrés hacen que el sistema funcione en condiciones normales y anormales de manera adecuada.
Desventajas de las pruebas de estrés:
- El proceso manual de prueba de esfuerzo lleva más tiempo en completarse y es un proceso complicado.
- Se requiere un buen conocimiento de secuencias de comandos para implementar los casos de prueba de secuencias de comandos para la herramienta en particular.
- Hay una necesidad de recursos externos para implementar pruebas de estrés. Conduce a una cantidad extra de recursos y tiempo.
- En el caso de una herramienta de prueba de estrés con licencia, cobra más que el costo promedio.
- En el caso de algunas herramientas de código abierto, existe la necesidad de una herramienta de prueba de carga adicional para configurar el entorno de prueba de esfuerzo.
- Si no se implementan los scripts de estrés o los casos de prueba adecuados, habrá una posibilidad de falla de algunos recursos y pérdida de tiempo.