Prueba de carga frente a prueba de esfuerzo [cerrado]

80

¿Cuál es la diferencia entre las pruebas de carga y de estrés?

Neeta
fuente
1
Me encontré haciendo la misma pregunta y me di cuenta de que hay muchas definiciones para los tipos de pruebas de rendimiento, pero no existe una definición estándar "oficial".
Dominik Antal
6
Voy a votar para cerrar esta pregunta como fuera de tema porque no se trata de programación. Se trata de tipos de pruebas y ese tema tiene muchas preguntas y respuestas en sqa.stackexchange.com
AdrianHHH
Debería encontrar una respuesta a esta pregunta aquí: Performance vs Load vs Stress Testing .
Jerome L
1
una pregunta cerrada tiene 72 votos y 110K visitas. que debe dejar que los que se cerró a reconsiderar ..
lluvia de ideas

Respuestas:

111

Wikipedia sobre pruebas de carga (negrita es mía):

[...] Normalmente se realiza una prueba de carga para comprender el comportamiento del sistema bajo una carga esperada específica . Esta carga puede ser el número concurrente esperado de usuarios en la aplicación que realizan un número específico de transacciones dentro de la duración establecida. Esta prueba proporcionará los tiempos de respuesta de todas las transacciones comerciales críticas importantes. [...]

y en las pruebas de estrés :

comprender los límites superiores de capacidad dentro del sistema. Este tipo de prueba se realiza para determinar la solidez del sistema en términos de carga extrema y ayuda a los administradores de aplicaciones a determinar si el sistema funcionará lo suficiente si la carga actual supera el máximo esperado .

Entonces, la conclusión es: si está probando una carga normal esperada (sabe que el sistema será utilizado por hasta 100 usuarios a la vez), esto es una prueba de carga . Pero cuando desea determinar cómo se comporta el sistema bajo una carga extrema (DoS, efecto Slashdot ) y cuando se rompe, esto es una prueba de estrés .

Tomasz Nurkiewicz
fuente
3
¿Entonces son básicamente lo mismo pero la carga está bajo carga normal y el estrés es mayor que la carga normal? ¿No se trata de probar diferentes aspectos del sistema?
Neeta
11
@Neeta: la prueba de carga simula usuarios reales mediante la inyección de pausas aleatorias entre solicitudes. Las pruebas de estrés pueden simplemente ejecutar tantas solicitudes como sea posible. Pero el escenario de prueba puede ser el mismo.
Tomasz Nurkiewicz
@Neeta la respuesta del usuario2197712 sería más apropiada. Lo entiendo así: la prueba de esfuerzo es descubrir cómo se comporta el sistema con una entrada normal en un entorno anormal, mientras que la prueba de carga es descubrir cómo se comporta el sistema con una entrada anormal en un entorno normal.
ADTC
19

Los términos "pruebas de estrés" y "pruebas de carga" a menudo se usan indistintamente por los ingenieros de pruebas de software, pero en realidad son bastante diferentes.

Pruebas de estrés

En las pruebas de estrés, intentamos romper el sistema bajo prueba abrumando sus recursos o quitándole recursos (en cuyo caso a veces se le llama prueba negativa). El objetivo principal detrás de esta locura es asegurarse de que el sistema falle y se recupere correctamente; esta cualidad se conoce como recuperabilidad. O La prueba de estrés es el proceso de someter su programa / sistema bajo prueba (SUT) a recursos reducidos y luego examinar el comportamiento del SUT mediante la ejecución de pruebas funcionales estándar. La idea de esto es exponer problemas que no aparecen en condiciones normales. Por ejemplo, un programa de múltiples subprocesos puede funcionar bien en condiciones normales, pero en condiciones de disponibilidad reducida de CPU, los problemas de tiempo serán diferentes y el SUT se bloqueará. Los tipos más comunes de recursos del sistema que se reducen en las pruebas de esfuerzo son la CPU, la memoria interna y el espacio en disco externo. Al realizar pruebas de estrés, es común llamar a las herramientas que reducen estos tres recursos EatCPU, EatMem y EatDisk respectivamente.

Mientras que, por otro lado, pruebas de carga

En el caso de la prueba de carga La prueba de carga es el proceso de someter su SUT a cargas pesadas, generalmente mediante la simulación de múltiples usuarios (usando Load runner), donde "usuarios" pueden significar usuarios humanos o usuarios virtuales / programáticos. El ejemplo más común de prueba de carga implica someter una aplicación basada en web o en red a accesos simultáneos de miles de usuarios. Esto generalmente se logra mediante un programa que simula a los usuarios. Hay dos propósitos principales de las pruebas de carga: determinar las características de desempeño del SUT y determinar si el SUT se "rompe" con gracia o no.

En el caso de un sitio web, usaría pruebas de carga para determinar cuántos usuarios puede manejar su sistema y aún tener un rendimiento adecuado, y para determinar qué sucede con una carga extrema: ¿generará el sitio web un mensaje de "demasiado ocupado" para usuarios, o el servidor Web colapsará en llamas?

user2197712
fuente
10

Prueba de carga: la prueba de carga está destinada a probar el sistema aumentando constante y constantemente la carga en el sistema hasta el momento en que alcanza el límite del umbral.

Ejemplo Por ejemplo, para comprobar la funcionalidad de correo electrónico de una aplicación, podría estar inundada con 1000 usuarios a la vez. Ahora, 1000 usuarios pueden activar las transacciones de correo electrónico (leer, enviar, eliminar, reenviar, responder) de muchas formas diferentes. Si tomamos una transacción por usuario por hora, serían 1000 transacciones por hora. Al simular 10 transacciones / usuario, podríamos probar la carga del servidor de correo electrónico al ocuparlo con 10000 transacciones / hora.

Pruebas de estrés: en las pruebas de estrés, se llevan a cabo varias actividades para sobrecargar los recursos existentes con trabajos en exceso en un intento de averiar el sistema.

Ejemplo: Como ejemplo, un procesador de texto como Writer1.1.0 de OpenOffice.org se utiliza en el desarrollo de cartas, presentaciones, hojas de cálculo, etc. El propósito de nuestras pruebas de estrés es cargarlo con el exceso de caracteres.

Para hacer esto, pegaremos repetidamente una línea de datos, hasta que alcance su límite límite para manejar un gran volumen de texto. Tan pronto como el tamaño de los caracteres alcance los 65.535 caracteres, simplemente se negará a aceptar más datos. El resultado de la prueba de estrés en Writer 1.1.0 produce el resultado de que no se bloquea bajo el estrés y que maneja la situación con elegancia, lo que garantiza que la aplicación funcione correctamente incluso en condiciones de estrés rigurosas.

Rehan Ali
fuente
3

-> Probar la aplicación con el número máximo de usuarios y entradas se define como prueba de carga . Si bien probar la aplicación con más del número máximo de usuarios y entradas se define como prueba de esfuerzo .

-> En las pruebas de carga medimos el rendimiento del sistema en función de un volumen de usuarios. Durante las pruebas de estrés, medimos el punto de ruptura de un sistema.

-> Load Testing está probando la aplicación para requisitos de carga determinados que pueden incluir cualquiera de los siguientes criterios:

 .Total number of users.

 .Response Time

 .Through Put

Algunos parámetros para comprobar el estado de los servidores / aplicación.

-> Mientras la prueba de estrés está probando la aplicación para una carga inesperada. Incluye

 .Vusers

 .Think-Time

Ejemplo:

Si una aplicación está diseñada para 500 usuarios, para las pruebas de carga verificamos hasta 500 usuarios y para las pruebas de estrés verificamos más de 500.

Rahul D
fuente
2

Prueba de carga = poner una cantidad específica de carga en el servidor durante cierto tiempo. 100 usuarios simultáneos durante 10 minutos. Asegure la estabilidad del software. Prueba de estrés = aumentar la cantidad de carga de manera constante hasta que el software falla. 10 usuarios simultáneos que aumentan cada 2 minutos hasta que el servidor falla.

Para hacer una comparación con el levantamiento de pesas: "maximiza" su peso para ver lo que puede hacer durante 1 repetición (prueba de esfuerzo) y luego, en los entrenamientos regulares, hace el 85% de su valor máximo para 3 series de 10 repeticiones (prueba de carga)

DMart
fuente
1

Prueba de carga : - La prueba de carga está destinada a probar el sistema aumentando constante y constantemente la carga en el sistema hasta el momento en que alcanza el límite del umbral.

Pruebas de estrés : - En las pruebas de estrés, se llevan a cabo diversas actividades para sobrecargar los recursos existentes con trabajos en exceso en un intento de averiar el sistema.

La diferencia básica es la siguiente

haga clic aquí para ver la diferencia exacta

Mistry Unnati
fuente
0

Pruebas de carga: gran cantidad de usuarios Pruebas de estrés: demasiados usuarios, demasiados datos, muy poco tiempo y muy poco espacio


fuente
-1

Carga: prueba S / W a carga máxima. Estrés: más allá de la carga de S / W o para determinar el punto de ruptura de s / w.

Ankit Nigam
fuente
4
¿Qué hay de nuevo en su respuesta en comparación con las respuestas anteriores?
Stepan Novikov