• Apr 26, 2024

JMeter DSL: Un giro latino en las pruebas de rendimiento

Si la interfaz de JMeter te parecía horrible, esto te va a salvar la vida!

¡Hola, comunidad de Free Range Testers! Prepárense para algo que hace del mundo de las pruebas de rendimiento un lugar mejor: ¡JMeter DSL! 🎉 ¡Sí, leyeron bien! Si ya sos un fan de Apache JMeter, seguro que JMeter DSL te encantará. Y si aún no eres fan, es muy probable que lo seas una vez que termines de leer este post. Así que, ¿qué te parece si nos ponemos cómodos y nos sumergimos en este asombroso mundo? 💻

¿Qué es JMeter DSL?

Primero, hablemos de qué es exactamente JMeter DSL. Es una biblioteca que permite escribir pruebas de rendimiento en Java, utilizando el famoso motor de pruebas de rendimiento Apache JMeter. Lo genial de JMeter DSL es que mantiene las cosas simples, enfocándose en los casos de uso más comunes, evitando invertir esfuerzo de desarrollo en características que podrían no ser necesarias. Esto significa que puedes obtener todas las ventajas de JMeter sin tener que aprender un nuevo lenguaje de scripting. ¿No es fantástico? 🚀 Aparte, y detalle para nada menor, fue desarrollado por los hermanos Uruguayos 🇺🇾 en Abstracta, por lo que doble importancia de conocer esta nueva manera de trabajar con JMeter!

Instalación y configuración

Ahora, vamos a lo práctico. ¿Cómo empezamos a usar JMeter DSL? Simplemente tienes que incluirlo en tu proyecto. Aquí te muestro cómo hacerlo con Maven:

<dependency>
  <groupId>us.abstracta.jmeter</groupId>
  <artifactId>jmeter-java-dsl</artifactId>
  <version>1.11</version>
  <scope>test</scope>
</dependency>

¡Y eso es todo! Ahora tenés JMeter DSL en tu proyecto y estás listo para empezar a utilizarlo.

Creación de un plan de prueba HTTP sencillo

Una vez que tenés JMeter DSL en tu proyecto, podés utilizarlo para generar solicitudes HTTP. Aquí tienes un ejemplo:

@Test
public void testJMeterDsl() {
    JmeterDslTestPlan.testPlan("Plan de prueba",
        threadGroup(2, 10,
            httpSampler("http://mi-sitio-web.com/")
        )
    ).run();
}

Este ejemplo genera 10 solicitudes HTTP GET a `http://mi-sitio-web.com/` con 2 threads (usuarios concurrentes). Además, registra las estadísticas recogidas (tiempos de respuesta, códigos de estado, etc.) para su posterior análisis si es necesario. Facilito, ¿verdad?

Grabador de JMeter DSL

Pero eso no es todo amiguines, JMeter DSL viene con un grabador incorporado. Si alguna vez tuviste que crear un plan de pruebas en JMeter, sabrás que puede ser un proceso lento y tedioso. Pero con el grabador de JMeter DSL, podés acelerar el proceso considerablemente. Para usarlo, solo necesitás ejecutar el siguiente comando:

jbang us.abstracta.jmeter:jmeter-java-dsl-cli:1.11 recorder http://retailstore.test

¡Y voilà! Ya estás grabando un plan de pruebas. ¿No está de re copete?

Correlaciones en JMeter DSL

No quiero hacer un post eterno y por eso no voy a profundizar en las correlaciones en JMeter DSL, pero quiero dejarte con algo que te va a volar la peluca. JMeter DSL permite definir reglas de correlación para evitar planes de prueba frágiles con valores fijos en los parámetros de las solicitudes. Esto significa que puedes usar expresiones regulares para que el grabador agregue automáticamente un `regexExtractor` y reemplace las ocurrencias de los valores extraídos en las solicitudes siguientes con las referencias de las variables adecuadas.

Por último, pero no menos importante, si te gusta este proyecto, te invito a que le des una estrella ⭐ en GitHub. Esto ayudará a que el proyecto sea más visible, gane relevancia, impulse a la comunidad latina en la escena internacional y animará a los creadores a invertir más esfuerzo en nuevas características. Y, por supuesto, si te encontrás con algún escenario en particular (o una característica de JMeter) que necesitas y que no está actualmente soportada, no dudes en hacerles saber creando un ticket!

Eso es todo por hoy, amigos. Espero que hayas disfrutado de esta introducción a JMeter DSL tanto como yo. No puedo esperar para ver qué haces con esta increíble herramienta. Hasta la próxima, ¡sigan testeando! 👋👋👋.

Un poco

Sobre mi

Consultor privado e instructor en QA

Más de 16 años en el mercado, trabajando como consultor QA privado para empresas de Nueva Zelanda y Australia en proyectos de gran impacto y siempre a la vanguardia.

Lo que enseño viene de mi experiencia 🧑🏻‍💻

  • Entrega gratuita por correo electrónico

La guía 2025 para conseguir trabajo en Testing de Software

  • Descarga digital
  • 1 archivo

Conseguir trabajo en Testing de Software, en este 2025, presenta desafíos de los que necesitás enterarte YA mismo. En esta guía exclusiva de Free Range Testers vuelco en el tono informal de siempre, mis más de 16 años de experiencia y sobre todo lo relacionado a las nuevas tendencias que van a hacer la gran diferencia a la hora de buscar trabajo. ¡Nos vemos en el libro!

Suscríbete para estar informado de las actividades de Free Range Testers.

0 comments

Sign upor login to leave a comment