Grabación de tráfico HTTP con JMeter

recording

JMeter cuenta con un componente para realizar la grabación del tráfico HTTP y su nombre es HTTP Test Script Recorder, anteriormente conocido como HTTP Proxy server, su funcionalidad es básicamente la de un servidor proxy que captura y redirije las peticiones HTTP o HTTPS tanto al Recording Controller como al servidor destino.

¿Cómo iniciar una grabación?

Se tendrían que colocar ciertos componentes en el orden adecuado para que la grabadora funcione correctamente, pero también podemos utilizar las plantillas que JMeter trae por definición y una de ellas es la plantilla de grabación, la cual puede ser fácilmente utilizada desde la opción File -> Template y seleccionar la opción recording. Existen dos plantillas de grabación una con Think Time y otra haciendo caso omiso de estos valores, dependiendo de tus necesidades te recomendamos utilizar la que tiene los temporizadores si no planeas realizar modelado o cálculos peticiones por segundo. En caso de que vayas a realizar alguna de estas actividades, te recomendamos no grabar con Think Time debido a que es algo repetitivo eliminar estos temporizadores por cada una de las peticiones.

Grabación

jmeter-recording

Una vez que la plantilla de grabación fue cargada, no es necesario modificar absolutamente nada, basta con iniciar la grabadora en el botón del recuadro naranja para que JMeter generé el certificado de grabación. Este certificado solo será de utilidad si estamos grabando tráfico HTTPS. En el recuadro azul dentro del componente Recording Controller aparecerán nuestras transacciones y peticiones. Así mismo en el recuadro rojo dentro del componente View Results Tree se podrán visualizar el tráfico capturado de nuestro navegador o dispositivo móvil que tenga configurado el servidor proxy.

Sería muy complejo y tardado explicar como configurar el proxy para cada navegador y dispositivo móvil, pero les dejo la receta de cocina para Firefox:

  1. Entrar a about:preferences en la barra de navegación.
  2. Ir a la pestaña de Privacidad y Seguridad.
  3. Abrir la sección de Certificados.
  4. Importar el archivo ApacheJMeterTemporaryRootCA.crt que se encuentra en la carpeta bin y chequear las opciones antes de aceptar.
  5. Regresar a la opción General.
  6. Abrir la sección de Red.
  7. Configurar la conexión e introducir la dirección del servidor proxy, en caso de ser tu mismo equipo introduce la dirección IP 127.0.0.1 .
  8. Chequea la opción para todos los protocolos y configura el puerto en 8888.

Cabe mencionar que si algo sale mal puede ser por múltiples motivos, te invitamos a entrar a nuestro canal de Slack, en dónde puede ser más sencillo para nosotros apoyarte compartiendo bitácoras e imágenes.

jmeter-recording-popup

Para finalizar, al momento de grabar podemos seleccionar el tipo de etiquetado como Prefijo o Nombre de Transacción en el recuadro amarillo, esta opción dependerá tanto de tus necesidades como en la manera que vayamos a reportar los resultados. Para novatos te recomiendo utilizar Prefijo. ¡Suerte!

-Antonio