Temporizadores Jmeter: constantes, aleatorios gaussianos, uniformes [Ejemplo]

ยฟQuรฉ son los temporizadores?

Por defecto, JMeter envรญa la solicitud sin pausa entre cada solicitud. En ese caso, JMeter podrรญan 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 JMeter a 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.

Los siguientes 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 DescriptTengo un nombre para 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) Beneficios 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 DescriptTengo un nombre para 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) Beneficios 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 uno 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:

Cรณmo utilizar el temporizador constante en Jmeter

Condiciรณn previa

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

Paso 1) Agregar grupo de subprocesos

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

En el panel de control del grupo de subprocesos, ingrese las propiedades del subproceso de la siguiente manera

Agregar grupo de hilos

Esta configuraciรณn permite JMeter Para crear uno solicitud del usuario para http://www.google.com in 100 veces

Paso 2) Agregar JMeter elementos

  • 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รฑadir -> 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)

Localizaciรณn de averรญas

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

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

Resumir este post con: