Grabación y reproducción de scripts en JMeter

En este tutorial, veremos cómo grabar peticiones HTTP o HTTPS en JMeter utilizando el Grabador de Script de Pruebas HTTP(S) (o Servidor Proxy HTTP en versiones anteriores de JMeter). Empecemos por el primer paso, es decir j. ejecutando JMeter. Tras iniciar JMeter, podemos ver dos controles en el panel izquierdo:

- Plan de pruebas – El plan de pruebas es el área donde se ejecutan y almacenan todas las secuencias de comandos.
- Workbench – Workbench es un área que utilizamos con un propósito temporal, básicamente se utiliza para añadir elementos de prueba que ayuden a la hora de cargar scripts en JMeter.
Grabación en JMeter
Ahora vamos a ver cómo podemos grabar scripts en JMeter:
- Añade un grupo de hilos dentro del plan de pruebas y nombra el grupo de hilos según la acción que vayan a realizar, por ejemplo «LoginUsers». Haz clic con el botón derecho en Plan de Pruebas -> haz clic en Añadir -> Hilos (Usuarios) -> Grupo de Hilos.
- Añade un controlador lógico (por ejemplo, Controlador de Transacciones) dentro del grupo de hilos. Haz clic con el botón derecho en el grupo de hilos -> Haz clic en Añadir -> Controlador lógico -> Controlador de transacciones (no olvides hacer clic en la casilla de verificación Generar muestra padre). Añade un controlador de transacciones para cada paso del escenario de usuario del grupo de hilos creado, por ejemplo Comprobador de transacciones para «El usuario inicia la aplicación», «El usuario inicia sesión con credenciales válidas», «El usuario hace clic en enlaces de correos electrónicos no leídos», «El usuario cierra sesión y sale de la aplicación».
- Configuración del navegador para los ajustes del servidor proxy. Así que ahora tenemos un esqueleto donde podemos grabar y crear guiones.
Lo siguiente que haremos será registrar las peticiones HTTP o HTTPS dentro de los controladores de transacciones. Para ello, necesitamos configurar un servidor proxy en nuestro navegador. Aunque podemos grabar llamadas utilizando cualquier navegador, se recomienda utilizar Mozilla Firefox sólo por su complemento «Firebug», ya que el firebug es muy importante para verificar si todas las llamadas se graban correctamente o no.
Los pasos para configurar un servidor proxy en Mozilla son los siguientes:
- Pulsa en Herramientas -> Opciones
- Haz clic en Avanzado, en Avanzado, haz clic en la pestaña Red
- Pulsa sobre un ajuste para mostrar la ventana de Ajustes de conexión de
- Pulsa el botón Configuración manual del proxy
- Ahora introduce 127.0.0.1 en el cuadro de texto Proxy HTTP y cualquier puerto disponible en el cuadro de texto Puerto, por ejemplo 9001

- Veamos lo que hemos hecho, la dirección IP que hemos introducido en el cuadro de texto Proxy HTTP es la dirección loopback, que es la interfaz software loopback de la máquina real en la que estamos trabajando, y el puerto que hemos introducido es el puerto a través del cual se enrutará todo el tráfico, este puerto también se utilizará en JMeter.
- A continuación se muestra la configuración de JMeter para los scripts de registro. Ahora configuraremos JMeter para que registre las peticiones HTTP en los controladores de transacciones:
- Haz clic con el botón derecho del ratón en WorkBench.
- Haz clic en Añadir-> Elementos que no son de prueba-> Script de prueba HTTP(S) (servidor proxy HTTP en versiones anteriores de JMeter).
- Introduce el valor del puerto que hemos introducido en el campo Puerto de nuestro navegador.
- En el menú desplegable Controlador de destino, selecciona el Controlador de transacciones en el que quieres realizar la entrada.
- Pulsa el botón Iniciar para empezar a grabar.

Ahora todo lo que hagamos en nuestro navegador se almacenará como peticiones http en el controlador de transacciones que hayamos seleccionado. Supongamos que hemos seleccionado «Aplicación de lanzamiento de usuario» como controlador de destino, hacemos clic en el botón Inicio de JMeter, vamos a nuestro navegador e iniciamos la aplicación. De nuevo, iremos a JMeter y comprobaremos si hay solicitudes registradas en el controlador de transacciones «Usuario lanza aplicación» o no. Si la respuesta es afirmativa, hacemos clic en el botón Detener, seleccionamos el siguiente controlador de transacciones en el desplegable Controlador de destino (El usuario introduce las credenciales de inicio de sesión válidas y hace clic en el botón Inicio de sesión), hacemos clic en el botón Ejecutar, navegamos hasta el navegador e introducimos las credenciales de inicio de sesión y hacemos clic en el botón Inicio de sesión. Ve a JMeter y haz clic en el botón Detener. Realiza estos pasos para cada controlador de transacciones.
Esto completa la parte de grabación, lo siguiente es añadir oyentes a nuestro plan de pruebas para interpretar los resultados de las pruebas. Para ello, haz clic con el botón derecho del ratón en Plan de pruebas-> Añadir-> Escuchas. Aparecerá una lista de todos los oyentes disponibles, mientras tanto utiliza los oyentes Gráfico agregado y Ver árbol de resultados.
Ahora podemos ejecutar el script pulsando Ctrl+R o haciendo clic en el icono Reproducir. Aparecerá un icono en la parte superior derecha para indicar que la prueba se está ejecutando. Cuando hayas terminado, comprueba los resultados y los gráficos en los oyentes. Algunos controladores de transacciones pueden fallar (compruébalo en el árbol de resultados de la vista: las solicitudes fallidas se marcan en rojo) porque aún quedan muchos scripts por ejecutar en el plan de pruebas.
Así que esto era todo sobre grabación y reproducción en JMeter. En futuros posts, estudiaremos la «Parametrización y Correlación», que son el corazón y el alma del scripting.