Saltar al contenido

¿Qué son las pruebas de ESTRÉS en las pruebas de software? Herramientas, tipos, ejemplos

Prueba de estrés

Prueba de estrés es un tipo de prueba de software que verifica la estabilidad y confiabilidad de la implementación del software. El propósito de una prueba de esfuerzo de software es medir su robustez y capacidad de manejo de errores en condiciones de carga muy pesada y garantizar que el software no caiga en condiciones críticas. Prueba incluso más puntos operativos que los normales y evalúa cómo funciona el software en situaciones extremas.

En Ingeniería de Software, las Pruebas de Estrés se denominan Prueba de Resistencia. Bajo Stress Testing, AUT se enfatiza por un corto tiempo por su potencial a pesar de ser conocido. Uso más notable Las pruebas de estrés están rompiendo el límite, rompiendo el sistema, el software o el hardware.. También comprueba si el sistema demuestra una gestión de errores eficaz en situaciones extremas.

La aplicación que se está probando se resaltará al copiar datos de 5GB del sitio web y pegarlos en el Bloc de notas. El Bloc de notas está estresado y muestra un mensaje de error “Sin respuesta”.

En este tutorial, aprenderá:

Necesidad de pruebas de estrés

Considere los siguientes escenarios:

Las pruebas de estrés son necesarias para cumplir con estos picos de tráfico anormales. No atender este tráfico repentino puede resultar en la pérdida de ingresos y reputación.

Las pruebas de estrés también son muy valiosas por las siguientes razones:

Objetivos de la prueba de esfuerzo

El propósito de la prueba de esfuerzo es analizar el comportamiento del sistema después de una falla. Para que una prueba de esfuerzo tenga éxito, un sistema debe mostrar un mensaje de error apropiado cuando se encuentra en extremos.

Para realizar una prueba de esfuerzo, a veces es posible utilizar grandes conjuntos de datos que pueden perderse durante una prueba de esfuerzo. Los evaluadores no deben perder estos datos relacionados con la seguridad al realizar pruebas de esfuerzo.

El objetivo principal de las pruebas de estrés es garantizar que el sistema se recupere después de una falla conocida. recuperabilidad.

Pruebas de carga frente a pruebas de estrés

Prueba de cargaPrueba de estrés
Prueba de carga es decir, para probar el comportamiento del sistema en condiciones normales de carga de trabajo, y es simplemente una prueba o simulación con la carga de trabajo realLa prueba de estrés es la prueba del comportamiento del sistema en situaciones extremas y se realiza hasta que el sistema falla.
Las pruebas de carga no rompen el sistemaLas pruebas de esfuerzo intentan romper el sistema probando con datos o recursos primordiales.

Tipos de prueba de esfuerzo:

Los tipos de pruebas de resistencia son los siguientes y se explican a continuación:

Prueba de estrés de distribución:

En los sistemas de distribución cliente-servidor, todos los clientes se prueban desde el servidor. La función del servidor de estrés es distribuir un conjunto de pruebas de estrés a cada cliente de estrés y realizar un seguimiento del estado del cliente. Después de que el cliente contacta con el servidor, el servidor agrega el nombre del cliente y comienza a enviar datos para la prueba.

Mientras tanto, las máquinas cliente envían una señal o latido que está conectado al servidor. Si el servidor no recibe ninguna señal de la máquina cliente, debe investigarse más a fondo para depurarlo. En la figura, un servidor puede conectarse a los 2 clientes (Cliente1 y Cliente2), pero no puede enviar ni recibir una señal de los Clientes 3 y 4.

Correr de noche es la mejor opción para ejecutar estos casos de prueba de esfuerzo. Las granjas de servidores grandes necesitan un método más eficiente para determinar qué equipos han tenido fallas por estrés que deben investigarse.

Prueba de esfuerzo de la aplicación:

Esta prueba se enfoca en encontrar fallas relacionadas con el bloqueo y bloqueo de datos, problemas de red y cuellos de botella de desempeño en una aplicación.

Prueba de estrés transaccional:

Realiza pruebas de estrés en una o más transacciones entre dos o más aplicaciones. Se utiliza para ajustar y optimizar el sistema.

Prueba de estrés sistémico:

Se trata de una prueba de esfuerzo integrada que se puede probar en varios sistemas que se ejecutan en el mismo servidor. Se utiliza para encontrar fallas cuando los datos de una aplicación son bloqueados por otra aplicación.

Prueba de esfuerzo exploratoria:

Este es uno de los tipos de pruebas de estrés que se utilizan para probar el sistema con parámetros o condiciones anormales que es poco probable que ocurran en un caso real. Se utiliza para encontrar fallas en situaciones inesperadas como

  1. Una gran cantidad de usuarios iniciaron sesión al mismo tiempo
  2. Si se inició un escáner de virus en todas las máquinas al mismo tiempo
  3. Si la base de datos se ha desconectado cuando se accede desde un sitio web,
  4. Cuando se ingresa una gran cantidad de datos en la base de datos al mismo tiempo

¿Cómo hacer una prueba de esfuerzo?

El proceso de Stress Testing se puede realizar en 5 pasos principales:

  1. Planificación de la prueba de esfuerzo. Aquí recopila datos del sistema, analiza el sistema, define los objetivos de la prueba de esfuerzo
  2. Crear scripts automatizados: en este paso, crea los scripts automatizados para probar Stress, genera los datos de prueba para los escenarios de estrés.
  3. Ejecución de secuencias de comandos: en este paso, ejecuta las secuencias de comandos automatizadas en las pruebas de estrés y almacena los resultados de estrés.
  4. Análisis de resultados: en este paso, analiza los resultados de la prueba de esfuerzo e identifica los cuellos de botella.
  5. Ajuste y optimización: en este paso, usted afina el sistema, cambia las configuraciones, optimiza el código y logra el objetivo de alcanzar el punto de referencia deseado.

Finalmente, vuelve a ejecutar el ciclo completo para determinar que los ajustes han producido los resultados deseados. Por ejemplo, no es raro que haya entre 3 y 4 ciclos del proceso de Stress Testing para lograr los objetivos de desempeño.

Herramientas recomendadas para pruebas de estrés:

LoadRunner

LoadRunner es una herramienta de prueba de carga de HP ampliamente utilizada. Los resultados de la prueba de carga en forma de corredera de carga se consideran un punto de referencia.

Jmeter

Jmeter es una herramienta de prueba de código abierto. Es puro Java aplicación de estrés y Pruebas de rendimiento. Jmeter está destinado a cubrir tipos de pruebas como carga, funcional, estrés, etc. Requiere JDK 5 o superior para funcionar.

Probador de estrés

Esta herramienta proporciona un análisis extenso del rendimiento de las aplicaciones web, proporciona resultados en un formato gráfico y es extremadamente fácil de usar. No se requieren secuencias de comandos de alto nivel y ofrecen un buen retorno de la inversión.

Neo carga

Esta es una herramienta popular disponible en el mercado para probar la web y Móvil solicitud. Esta herramienta puede simular miles de usuarios con el fin de evaluar el rendimiento de la aplicación bajo carga y analizar los tiempos de respuesta. También admite pruebas integradas en la nube: rendimiento, carga y estrés. Es fácil de usar, rentable y ofrece una buena escalabilidad.

Métricas para pruebas de estrés

Las métricas ayudan a evaluar el rendimiento del sistema y generalmente se estudian al final de la prueba de esfuerzo. Las métricas más utilizadas son:

Medir la escalabilidad y el rendimiento

Respuesta a la solicitud

Fracasos

Conclusión

El propósito de una prueba de esfuerzo es verificar el sistema en condiciones extremas. Supervisa los recursos del sistema, como la memoria, el procesador, la red, etc., y comprueba la capacidad del sistema para volver al estado normal. Comprueba si el sistema muestra los mensajes de error apropiados cuando está estresado.