Primeros pasos con Apache JMeter

Instalación o configuración

  1. Descargue un archivo distribuido de la sección Binarios de JMeter desde la página Descargar Apache JMeter.
  2. Según la versión que descargó, verifique los requisitos mínimos de la versión de Java e instale Java si es necesario. Asegúrese de que la variable de entorno JAVA_HOME esté configurada y apunte a una versión correcta.
  3. Extraiga el archivo de distribución en el directorio de su elección.
  4. Abra la interfaz de usuario de JMeter:
  • En Windows: vaya al directorio <jmeter_ubicación>\bin y ejecute jmeterw.bat o jmeter.bat

  • En Linux/Mac: vaya al directorio <jmeter_ubicación>/bin y ejecute jmeter o ‘jmeter.sh`.

     For example:
    
       cd /Users/me/apache-jmeter/bin
       ./jmeter 
    
     **Note**: if the above command fails with `Permission denied` error, set execute permission on `jmeter` file:
    
       cd /Users/me/apache-jmeter/bin
       chmod u+x ./jmeter
    

Si puede ver la interfaz de usuario de JMeter, la configuración básica se realizó correctamente.

JMETER_UI

Descripción general de los componentes de Apache JMeter a alto nivel

Apache JMeter separó todos los componentes en los siguientes grupos según su funcionalidad:

  1. Plan de Prueba: Punto de partida para el scripting. JMeter guarda el plan de prueba en formato .jmx. Agregue componentes al plan de prueba haciendo clic con el botón derecho en Test Pand y navegando hasta el componente que desea agregar.
  2. Workbench: es un lugar temporal para comenzar a crear secuencias de comandos. Junto con todos los componentes disponibles en Test Plan, obtienes HTTP(s) Test Script Recorder para grabar las acciones del navegador. Los scripts se pueden guardar en el banco de trabajo siempre que marque la casilla de verificación “Guardar banco de trabajo”, de lo contrario, no lo son.
  3. Subprocesos (Usuarios): puede definir una cantidad de usuarios (virtuales) para ejecutar, aumentar el tiempo y contar bucles. también puede definir en el plan de prueba si los grupos de subprocesos deben ejecutarse en secuencia o en paralelo en el caso de varios grupos de subprocesos. algunos ejemplos son Grupo de subprocesos, Grupo de subprocesos de configuración y Grupo de subprocesos de desmontaje
  4. Controlador lógico: Permite definir el flujo de ejecución y agrupación de los samplers. uno de los ejemplos útiles es Transaction Controller, donde combina todas las muestras de la página de inicio de sesión (todos los recursos, incluidas imágenes, archivos .css y .js) para que se pueda recuperar el tiempo de respuesta combinado.
  5. Sampler: Sampler es el núcleo de JMeter. Brinda componentes para simular solicitudes de varios protocolos como HTTP, JDBC, FTP, SMTP, etc. Por ejemplo, HTTP sampler le permite simular un paquete HTTP (de GET, POST o cualquier método compatible). Se admiten los protocolos de flujo principal, para otros puede usar complementos gratuitos o comerciales.
  6. Elemento de configuración: los elementos de configuración se pueden usar para establecer valores predeterminados y variables para su uso posterior por parte de los muestreadores. Tenga en cuenta que estos elementos generalmente se procesan al comienzo del alcance en el que se encuentran, es decir, antes de cualquier muestra en el mismo alcance. CSV Dataset Config le permite proporcionar datos de prueba como nombres de usuario, contraseñas del escenario de inicio de sesión desde un archivo. El elemento de configuración Variables definidas por el usuario le permite definir variables que se pueden usar en todo el plan de prueba, pero donde cada subproceso tiene su propia copia.
  7. Temporizador: por defecto, un subproceso JMeter ejecuta muestras en secuencia sin pausas. Los componentes que se presentan aquí brindan la funcionalidad para introducir el “Tiempo de reflexión del usuario” en varias formas entre las muestras. algunos ejemplos son Temporizador constante, Temporizador de rendimiento constante.
  8. Preprocesadores: le permite realizar operaciones/acciones antes de que se ejecute la muestra. JSR223 Pre Processor con Apache Groovy (similar al estilo de codificación de Java) le permite realizar cambios en la muestra antes de enviarla.
  9. Postprocesadores: le permiten realizar operaciones/acciones después de que se ejecute la muestra. algunos ejemplos útiles son la recuperación de valores dinámicos como ID de sesión, el uso del posprocesador Regular Expression Extractor para cualquier tipo de texto, CSS/JQuery Extractor para HTML, JSON Extractor para JSON, XPath Extractor para XML.
  10. Afirmaciones: como sugiere el nombre, puede afirmar la respuesta de los muestreadores de diferentes maneras, como buscar algún texto, el tamaño de la respuesta y la duración para recibir la respuesta, etc. Por ejemplo, puede usar Afirmación de respuesta para buscar algún texto en la respuesta. Si la aserción falla, JMeter marca la muestra, a la que se aplica la aserción, como falla.
  11. Oyentes: los oyentes le permiten guardar los resultados de la prueba, ver la ejecución de la prueba, etc. Por ejemplo, al usar ‘Ver árbol de resultados’, puede ver la solicitud/respuesta de los muestreadores y si marcaron como PASA (color verde)/FALLA ( color rojo) por JMeter. con el Informe agregado, puede guardar los resultados de la prueba en formato CSV. La nota importante es que utiliza escuchas antes de la ejecución de la prueba (para la depuración del script de prueba) o después de la ejecución de la prueba (para ver los resultados en gráficos o resumen), pero no durante la ejecución. debemos eliminar los oyentes durante la prueba, ya que consume muchos recursos del sistema. Entonces, ejecutamos la prueba en modo no GUI y guardamos los resultados usando la opción -l en formatos .csv/.jtl. Publique la prueba, puede cargar estos archivos guardados en cualquiera de los oyentes en JMeter para ver gráficos/resumen.

La siguiente es la sintaxis general (usted agrega cualquier componente según sea necesario):

Test Plan
    Thread Group
        Config Element
        Logic Controller
            Pre Processor
            Sampler
            Timer
            Post Processor
            Assertion
        Listener

Referencias:

  1. Plan de prueba y componentes
  2. Orden de ejecución
  3. Reglas de alcance