You are on page 1of 6

Pruebas de carga con el incomprendido JMeter - Parte 1.

Bueno, antes de comenzar a leer esto, si son curiosos y si no habían escuchado nunca sobre
JMeter, mínimo ya lo han buscado en Google para revisar de qué se trata. De todas maneras lo
explicaré desde cero para poder ir entendiendo algunas cosas interesantes que he aprendido
acerca de esta herramienta en las últimas semanas.

JMeter es una herramienta OpenSource que permite realizar pruebas de carga sobre nuestras
aplicaciones. Las pruebas se pueden realizar sobre casi cualquier elemento de software de nuestra
aplicación (una función/procedimiento de base de datos, un método Java, un servicio web, una
página web, etc.) y a través de diversos protocolos (TCP/IP, HTTP, JDBC, etc.). Esta herramienta ha
sido desarrollada sobre Java y su versatilidad ha sido bien aprovechada pudiendo llegar a tener
una herramienta sumamente personalizada para nuestras pruebas de carga.

Una prueba de carga, también conocida como prueba de estrés, o (load test), es una prueba cuya
finalidad es medir el rendimiento de nuestra aplicación en escenarios de extrema concurrencia.
Cuantos requerimientos simultáneos puede llegar a responder mi servicio web sin que el tiempo
de respuesta se vea afectado? Cuantos usuarios simultáneos podrán acceder a mi página web
antes de que el servidor web colapse? Las respuestas a este tipo de preguntas que a simple vista
son difíciles de conocer, son el objetivo de las pruebas de carga sobre una determinada aplicación.

Bien, lo primero que necesitamos, es tener instalado un JRE (Java Runtime Environment), con la
finalidad de poder ejecutar la aplicación que como dijimos anteriormente, está desarrollada en
Java. Si tienes alguna duda acerca de lo que es el JRE o cómo instalarlo, puedes revisar
esta entrada antes de continuar.

Con un ambiente de ejecución de Java instalado, lo único que necesitamos es el programa. Jmeter
puede ser descargado desde su sitio oficial: http://jmeter.apache.org/. Al seguir los vínculos:
Download -> Download Releases, encontramos los enlaces a la descarga del programa en dos
formatos: tar.gz y zip. En el momento de esta publicación la última versión estable es la 2.9. Así
que al descargar el programa (yo prefiero el zip), tendremos un archivo como: apache-jmeter-
2.9.zip.

Al descomprimirlo, tendremos el programa listo para ser utilizado. Dentro de la carpeta: "apache-
jmeter-2.9\bin" podemos encontrar el archivo "jmeter.bat", que básicamente es el archivo que
permitirá ejecutar el programa. (Para poder ejecutarlo sin problemas es necesario tener instalado
como mínimo el JRE 1.6. Si no sabes qué es eso, puedes chequear estaentrada para salir de las
dudas).

Ahora tenemos a JMeter listo para correr una prueba de carga sobre alguna víctima algún sitio de
prueba. Para nuestro primer ejemplo, lo que haremos es "probar" el sitio oficial de JMeter.

Lo único que configuraremos es un escenario que simule 5 peticiones simultáneas al sitio


"http://jmeter.apache.org" y ver cómo se comporta cada petición realizada. Para esto seguiremos
los siguientes pasos en la aplicación de JMeter:

1. Configurar un Grupo de Hilos

El elemento Grupo de Hilos es el punto de partida de cualquier Plan de Pruebas. Todos los
controladores y muestreadores deben estar dentro de un Grupo de Hilos. Como su nombre lo
indica, este elemento controla el número de hilos que va a ejecutar nuestra prueba.

Entre las principales propiedades que vamos a editar están:

 La cantidad de hilos.

 El tiempo de subida (El tiempo que JMeter tendrá para levantar la cantidad de hilos
configurados).

 La cantidad de veces (iteraciones) que se ejecutará la prueba.

Para configurarlo, seguiremos estos pasos:


Nuevo Plan de Pruebas

Crear nuevo Grupo de Hilos

Configurar el Número de Hilos


2. Configurar una petición HTTP

Este elemento se comporta como un muestreador. Y su función principal es la de realizar una


solicitud HTTP hacia un servidor web.

Entre las principales propiedades que vamos a editar están:

 El nombre del servidor o dirección IP.

 El método HTTP que se va a usar para realizar la solicitud.

Para configurarlo, seguiremos estos pasos:

Agregar nueva Petición HTTP

Configurar el Servidor web y el Método HTTP

3. Configurar un reporte "Árbol de Resultados"


Este elemento se comporta como un receptor. Y permite visualizar a manera de árbol cada una de
las respuestas obtenidas por la ejecución de los muestreadores. Además se puede ver el tiempo
que le tomó obtener la respuesta y algunos códigos de respuesta.

Para configurarlo, seguiremos estos pasos:

Agregar nuevo Árbol de Resultados

Luego de esto procederemos a darle click al botón de la flecha verde (Arrancar) para iniciar
nuestra prueba. En ese momento, el grupo de hilos lanzará 5 hilos (en nuestro caso) haciendo
cinco peticiones HTTP simultáneas al servidor configurado. Los resultados de cada una de esas
peticiones podremos verlo en nuestro elemento Árbol de Resultados:

Código de respuesta de cada petición


Datos de respuesta de cada petición

Pues bien, hasta este momento hemos configurado un Plan de Pruebas que lanza 5 peticiones
simultáneas a la página inicial de un servidor web. Realmente no estamos probando el servidor
web con una carga realmente pesada (Podríamos aumentar la cantidad de hilos o las iteraciones
del Grupo de Hilos) y tampoco tenemos resultados descriptivos acerca del comportamiento del
servidor frente a cargas pesadas (Podríamos usar un receptor más especializado para esto como el
Gráfico de Tiempo de Respuesta), éstos puntos y otros más los cubriremos en la siguiente parte de
pseudo-tutorial de JMeter.

Fuente: http://jmeter.apache.org/usermanual

Si les ha parecido interesante la entrada, tienen comentarios, u opiniones acerca de este tema o
alguno relacionado, siéntanse en la libertad de comentar. La meta es aprender.

You might also like