Temporizadores Jmeter: constante, aleatorio gaussiano, uniforme [Ejemplo]

¿Qué son los temporizadores?

Por defecto, JMeter envía la solicitud. sin pausa entre cada solicitud. En ese caso, JMeter podría abrumar su servidor de prueba al realizar demasiadas solicitudes en un corto período de tiempo.

Imaginemos que envías miles solicitud a un servidor web bajo prueba en unos segundos. ¡Esto es lo que pasa!

Temporizadores en JMeter

Los temporizadores permiten que JMeter retrasar entre cada solicitud que realiza un hilo. Un temporizador puede resolver el servidor. sobrecarga problema.

También, en la vida real los visitantes no llegan a un sitio web todos al mismo tiempo, sino en diferentes intervalos de tiempo. Entonces Timer ayudará a imitar el comportamiento en tiempo real.

Following son algunos común tipos de temporizador en JMeter

Temporizador constante

El temporizador constante retrasa cada solicitud del usuario para el mismo cantidad de tiempo.

Temporizador constante en Jmeter

Temporizador aleatorio gaussiano

Gauss El temporizador aleatorio retrasa cada solicitud de usuario de un azar cantidad de tiempo.

Temporizador aleatorio gaussiano en Jmeter

parámetros

Atributo Descripción
Nombre Nombre descriptivo de este temporizador que se muestra en el árbol.
Desviaciones (milisegundos) A parámetro de la función de distribución gaussiana
Compensación de retardo constante (milisegundos) Adicionales valor en milisegundos

Entonces, el retraso total se describe en la siguiente figura:

Temporizador aleatorio gaussiano en Jmeter

Temporizador aleatorio uniforme

El temporizador aleatorio uniforme retrasa cada solicitud del usuario durante un período de tiempo aleatorio.

Temporizador aleatorio uniforme en Jmeter

parámetros

Atributo Descripción
Nombre Nombre descriptivo de este temporizador que se muestra en el árbol.
Máximo de retraso aleatorio Número aleatorio máximo de milisegundos para retrasar.
Compensación de retardo constante (milisegundos) Adicionales valor en milisegundos

El retraso total es la suma del valor aleatorio y el valor de compensación.

Temporizador BeanShell

El beanshell El temporizador se puede utilizar para generar un tiempo de retraso entre cada solicitud de usuario.

Temporizador BSF

El temporizador BSF se puede utilizar para generar un retraso entre cada solicitud de usuario utilizando un BSF Lenguaje de escritura.

Temporizador JSR223

El temporizador JSR223 se puede utilizar para generar un retraso entre cada solicitud de usuario utilizando un JSR223 Lenguaje de escritura

Cómo utilizar el temporizador constante

En este ejemplo, utilizará Temporizador constante para establecer un retraso fijo entre las solicitudes de los usuarios a google.com.

Comencemos con un script de prueba simple.

  1. JMeter crea una solicitud del usuario para http://www.google.com 100 veces
  2. Retrasar entre cada solicitud de usuario es 5000 ms

Aquí está la hoja de ruta para este ejemplo práctico:

Utilice el temporizador constante en Jmeter

Condición previa

We reutilizar el Paso 1 y el Paso 2 en el tutorial Pruebas de rendimiento de JMeter.

Paso 1) Agregar grupo de subprocesos

Haz clic derecho en la Plan de prueba y agregue un nuevo grupo de hilos: Añada-> Hilos (Usuarios) ->Grupo de hilos

En el panel de control del Grupo de subprocesos, ingrese Propiedades del subproceso como siguewing

Agregar grupo de hilos

Esta configuración permite a JMeter crear una solicitud del usuario para http://www.google.com in 100 veces

Paso 2) Agregar elementos JMeter

  • Agregar solicitud HTTP predeterminada
  • Agregar solicitud HTTP

Paso 3) Agregar temporizador constante

Haga clic con el botón Grupo de hilos -> Minutero -> Temporizador constante

Agregar temporizador constante

Configuración de un retraso de subproceso de 5000 milisegundos

Agregar temporizador constante

Paso 4) Agregar resultados de vista en la tabla

Ver resultados en tabla muestra el resultado de la prueba en formato de tabla.

Haga clic derecho Añada -> Perfil ->Ver resultado en tabla

Agregar resultados de vista en la tabla

Ver resultados en la tabla se muestra como se muestra a continuación

Agregar resultados de vista en la tabla

Paso 5) Ejecute su prueba

Cuando esté listo para ejecutar una prueba, haga clic en la carrera botón en la barra de menú, o tecla corta Ctrl + R

Este es el resultado de esta prueba.

Ejecute la prueba

Por ejemplo, en la figura anterior, analicemos el Muestra 2

  • Hora de inicio es 22:05:01.866
  • Tiempo de la muestra de la muestra 2 es 172 ms
  • Temporizador constante: 5000 ms (según configuración)
  • Hora de finalización de esta muestra es = 22:05:01.866 + 172 + 5000 = 22:05:07.038

Entonces la Muestra 3 debería comenzar en el momento 22:05:07.039 (Como se muestra en la figura anterior)

El retrasar de cada muestra es 5000 ms

Si cambia el temporizador constante es cero, verás que el resultado ha cambiado

Ejecute la prueba

Analicemos el Muestra 1

  • Hora de inicio es 22:17:39.141
  • Tiempo de la muestra de la muestra 2 es 370 ms
  • Temporizador constante : 0 ms (según configuración)
  • Hora de finalización de esta muestra es = 22:17:39.141+ 370 + 0 = 22:17:39.511

Entonces el Muestra 2 debe comenzar en el momento es 22:17:39.512 (Se muestra en la figura anterior)

Solucionando Problemas

Si enfrenta el problema mientras ejecuta el escenario anterior... haga lo siguientewing

  1. Compruebe si se está conectando a Internet a través de un proxy. En caso afirmativo, elimine el proxy.
  2. Abra una nueva instancia de JMeter
  3. Abra la TimerTestPlan.jmx en Jmetro
  4. Double Haga clic en Grupo de subprocesos -> Ver resultado en tabla
  5. Ejecutar la prueba