Está en la página 1de 39

Agenda

Pruebas de rendimiento.
Prueba de carga.
Pruebas de estrés.
¿Qué es JMeter?
Elementos básicos de Jmeter.
¿Qué son las pruebas de rendimiento?

Las pruebas de rendimiento se realizan para


determinar el rendimiento de un sistema en términos
de capacidad de respuesta y estabilidad bajo una
carga de trabajo particular.
Por lo general, no es funcional, lo que significa que
solo nos preocupamos por la carga en el sistema, la
escalabilidad, etc.
Pruebas de Carga / Capacidad
 La prueba de carga es la forma más simple de
prueba de rendimiento. Por lo general, se realiza
una prueba de carga para comprender el
comportamiento del sistema bajo una carga
sostenida específica (esperada).
 La carga puede ser el número simultáneo esperado
de usuarios en la aplicación que realizan un número
específico de transacciones dentro de la duración
establecida.
 En términos simples, es la carga máxima que el
caballo puede llevar sin que se tropiece o se vuelque
el carruaje.
Pruebas de Stress

 Cada sistema tiene un límite de capacidad. Cuando la carga supera el límite,


el Sistema comienza a responder muy lentamente e incluso a producir
errores.
 Es más visible en un sitio web, ya que el número de usuarios puede aumentar
drásticamente (a menudo de manera impredecible), dependiendo del
contenido.
 El propósito de las pruebas de estrés es encontrar el límite de capacidad del
sistema. Hacemos esto aumentando la carga en el sistema más allá de un
límite seguro, por lo que el sistema finalmente fallará. Con los hallazgos,
podemos ajustar los parámetros para estirar este límite.
Pruebas de carga automatizadas

 Todos o la mayoría de estos pasos se pueden automatizar usando varios


programas/scripts diferentes.
 Hay herramientas de prueba que las han integrado en herramientas llamadas
herramientas de prueba de carga.
 Con la llegada de las aplicaciones web, han aparecido varias herramientas
nuevas tanto en el ámbito comercial como en el de código abierto. La
siguiente diapositiva muestra una lista de las herramientas de prueba de
carga disponibles.
¿Qué es Jmeter?

 JMeter es una herramienta gratuita de medición de rendimiento de código


abierto escrita en Java.
 JMeter está disponible como una aplicación Java de escritorio y se puede
ejecutar en modo GUI y por lotes.
 Tiene una arquitectura completamente extensible. Nos permite desarrollar
varios elementos que pueden ser reutilizados en diferentes partes de un plan
de prueba. También permite desarrollar complementos, por lo que la
herramienta se puede ampliar aún más.
¿Por qué Jmeter?
 Es una herramienta de código abierto.
 Puede cargar y probar el rendimiento de muchos tipos de servidores diferentes.
 Diseño de GUI fácil de usar. Se puede ejecutar en modo por lotes y distribuido para
manejar más carga.
 El marco completo de subprocesos múltiples permite el muestreo concurrente por muchos
subprocesos y el muestreo simultáneo de diferentes funciones por grupos de subprocesos
separados.
 Puede imitar la funcionalidad del navegador web, incluido el almacenamiento en caché y
las cookies.
 Los controladores son configurables y pueden monitorear el rendimiento del servidor.
 Los resultados de las pruebas se pueden capturar en varios formatos, como informe de
resumen, gráfico, informe agregado, gráfico agregado, resultados en árbol y resultados en
tabla. Los resultados también se pueden almacenar en archivos para su posterior revisión.
 Arquitectura extensible. Admite complementos, bean shell, etc. para agregar más
funcionalidad.
Configuramos Java

 CMD / Símbolo de sistema


 Java –versión
 Variables de Entorno
Descarga de Jmeter

 https://jmeter.apache.org/download_jmeter.cgi
Assert
 Valida el resultado esperado.
Assert por Pagina
Assert Code (Not - Or)
Assert Result
Duración Assert
Assert Size
Assert Report CSV
Listerners (Resultados)
Reporte de Resultados
 Label: Nombre de los pedidos HTTP. Si está seleccionada la opción “¿Incluir el nombre del
grupo en la etiqueta?”, luego el nombre del grupo de subprocesos se agrega como prefijo. Esto
permite clasificar por separado etiquetas idénticas de diferentes grupos de hilos si fuera
necesario.
 # Samples: Cantidad de veces que se ejecutó el pedido. Teniendo en cuenta nuestra imagen
tendríamos 581 Samples para cada uno de los pedidos.
 Average: Tiempo de respuesta promedio expresado en milisegundos. Teniendo en cuenta
nuestra imagen, el primer sample podemos observar un average de 17708 ms, convertido a
segundos 17.708s.
 Median: Es el tiempo en el medio del resultado de un conjunto de muestras.
 90% Line: El 90% de los pedidos tienen un tiempo de respuesta inferior al indicado. Teniendo
en cuenta nuestra imagen, el primer sample podemos observar un valor de 21497 ms,
convertido a segundos 21.497s
 95% Line: El 95% de los pedidos tienen un tiempo de respuesta inferior al indicado. Teniendo
en cuenta nuestra imagen, el primer sample podemos observar un valor de 21546 ms,
convertido a segundos 21.546s
 99% Line: El 99% de los pedidos tienen un tiempo de respuesta inferior al indicado. Teniendo
en cuenta nuestra imagen, el primer sample podemos observar un valor de 36479 ms,
convertido a segundos 36.479s
 Min: Tiempo de respuesta mínimo, expresado en milisegundos. Teniendo en cuenta
nuestra imagen, el primer sample podemos observar un valor de 1092 ms, convertido a
segundos 1.092s
 Max: Tiempo de respuesta máximo, expresado en milisegundos. Teniendo en cuenta
nuestra imagen, el primer sample podemos observar un valor de 34079 ms, convertido
a segundos 34.079s
 Error: Porcentaje de los pedidos que respondieron con error. Aquí podemos observar
los códigos HTTP. Si desea conocer más sobre estos códigos, visite este post anterior.
 Throughput: Indica la cantidad de pedidos por segundos/minutos/hora de la prueba.
Este tiempo se calcula desde el inicio de la primera muestra hasta el final de la última
muestra.
 Received KB/s: Cantidad de KB recibidos por segundo.
 Sent KB/s: Cantidad de KB enviados por segundo.
Summary Report
Crear Variables
Recording

sortable

También podría gustarte