Controladores en JMeter: bucle, simple, transacción, módulo, aleatorio

¿Qué es el controlador lógico?

Los controladores lógicos le permiten definir el orden de procesamiento de la solicitud en un subproceso. Le permite controlar "cuándo" enviar una solicitud de usuario a un servidor web. Por ejemplo, puede utilizar controladores aleatorios para enviar solicitudes HTTP al servidor de forma aleatoria.

Los controladores lógicos determinan el orden en el que se ejecuta la solicitud del usuario.

Algunos controladores lógicos de uso común se encuentran a continuación:

El controlador lógico

Controlador de grabación

JMeter puede grabar de tu Pruebas pasos; Un controlador de grabación es un marcador de posición para almacenar estos pasos de grabación.

Controlador de grabación

Controlador sencillo

El controlador simple es solo un envase para solicitud del usuario.

Controlador sencillo

Controlador de bucle

Loop Controller hace que se ejecute la solicitud del usuario un número específico de veces o corre hacia como se muestra en la figura:

Controlador de bucle

Controlador aleatorio

Random Controller hace que todas las solicitudes de los usuarios se ejecuten lo aleatorio orden en cada período del ciclo.

Por ejemplo, tiene 3 solicitudes de usuarios al sitio web. http://www.google.com en seguimientowing orden:

  1. Solicitud HTTP
  2. Solicitud FTP
  3. solicitud JDBC

Estas 3 solicitudes deberían ejecutarse 5 veces. JMeter enviará un total de 15 solicitudes de usuarios al servidor de Google.

In secuencial pedido, se envían solicitudes secuencialmente en seguimientowing orden:

Solicitud HTTP ->Solicitud FTP->Solicitud JDBC

para cada bucle.

Controlador aleatorio

In azar pedido, las solicitudes se envían como al azar,

Solicitud FTP ->Solicitud HTTP->Solicitud JDBC

Or

Solicitud JDBC ->Solicitud FTP->Solicitud HTTP

Para cada bucle.

Controlador de módulo

El objetivo de Module Controller es agregar modularidad a JMeter.

La idea general es que las aplicaciones web constan de pequeñas unidades de funcionalidad (es decir, inicio de sesión, creación de cuenta, cierre de sesión…). Esta funcionalidad se puede almacenar en Controlador sencillo como “módulos”. El controlador del módulo elegirá qué módulo debe ejecutarse.

Controlador de módulo

Considere lo siguientewing escenario –

Quieres simular:

  • 50 usuarios saliendo de tu cuenta,
  • 100 usuarios iniciar sesión
  • 30 usuarios Search www.google.com

Puede utilizar JMeter para crear 3 módulos. Cada módulo simula la actividad de cada usuario: inicio de sesión, cierre de sesión y búsqueda.

Controlador de módulo

El controlador del módulo elige qué módulo debe ejecutarse.

Controlador de módulo

Otros controladores importantes

  • Intercalar Controlador: recoge y hace una de solicitud de usuario ejecutada cada bucle del hilo.
  • Runtime Controlador: controles cuánto tiempo a sus hijos se les permite correr.

Por ejemplo, si especificó Runtime Controller durante 10 segundos, JMeter ejecutará su prueba durante 10 segundos.

Otros controladores importantes

  • transacción Controlador: mide la tiempo total llevado a acabado una ejecución de prueba
  • Incluyendo Controlador: está diseñado para utilizar un plan de pruebas externo. Este controlador le permite utilizar múltiples planes de prueba en JMeter. Ver detalle en Pruebas de rendimiento de JMeter.

Ejemplo de controlador de bucle

Esta sección le muestra instrucciones paso a paso para agregar Controlador de bucle configurado según su plan de prueba de rendimiento actual.

El controlador de bucle hace que los samplers se ejecuten una determinada cantidad de veces, además del valor de bucle que haya especificado para el grupo de subprocesos. Por ejemplo, si usted

  • Agregue una solicitud HTTP a un controlador de bucle con un recuento de bucles de 50
  • Configure el recuento de bucles del grupo de subprocesos en 2
  • Luego, JMeter enviará un total de 50 * 2 = 100 solicitudes HTTP.

Este es el hoja de ruta de este ejemplo:

Ejemplo de controlador de bucle

Paso 1) Configurar el grupo de subprocesos

We reutilizar el paso 1, 2 en el tutorial Pruebas de rendimiento de JMeter.

  1. Agregar grupo de hilos

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

Pero en el panel de control del Grupo de subprocesos, ingrese Propiedades del subproceso de la siguiente manera:

Agregar grupo de hilos

Esto lo hara una solicitud del usuario al servidor web google.com y ejecutarlo 2 veces.

  1. Agregar elementos JMeter

Agregue la solicitud HTTP predeterminada a www.google.com.

  1. Agregar controlador de bucle

Haga clic derecho en Grupo de subprocesos -> Controlador lógico -> Controlador de bucle

Agregar controlador de bucle

Paso 2) Configurar el controlador de bucle

Agregue el valor 50 al campo Loop Count como se muestra a continuación. Esto lo hara una solicitud del usuario al servidor web google.com ejecutarlo 50 veces, además del valor de bucle = 2, que especificó para el grupo de subprocesos anterior. Por lo tanto, JMeter enviará un total de 2 * 50 = 100 Solicitudes HTTP.

Configuración del controlador de bucle

Haga clic derecho en Loop Controller, Agregar -> Sampler -> Solicitud HTTP

Configuración del controlador de bucle

Paso 3) Agregar resultados de vista en la tabla

Reutilizamos el Paso 2 en Minutero para agregar Ver resultados en la tabla

Entonces el plan de prueba se muestra en la siguiente figura.

Agregar resultados de vista en la tabla

Paso 4) Ejecute su prueba

Ahora regrese a Ver resultados en la tabla, haga clic en el botón Inicio en la barra de menú (Ctrl+R) para ejecutar una prueba.

Como se muestra en la siguiente figura, JMeter simula una solicitud de usuario, que se envía 100 veces, al servidor web http://www.google.com/. La prueba se detiene después de que se haya enviado una solicitud de usuario 100 veces.

Ejecutar la prueba

Solucionando Problemas

  1. Si enfrenta el problema mientras ejecuta el escenario anterior... haga lo siguientewing
  2. Compruebe si se está conectando a Internet a través de un proxy. En caso afirmativo, elimine el proxy.
  3. Abra una nueva instancia de Jmeter
  4. Abra la ControladorTestPlan.jmx en Jmetro
  5. Haga clic en Grupo de subprocesos -> Ver resultado en tabla
  6. Ejecutar la prueba