fbpx

Pruebas de rendimiento con Apache JMeter

Pruebas de rendimiento con Apache JMeter

Un aspecto importante al desarrollar una aplicación web es tener previsto el posible impacto que el uso de esta pueda ocasionar en el servidor web. Si la aplicación es simple o de tamaño medio, quizás no sea obligatorio realizar pruebas de rendimiento, aunque siempre es recomendable. Para ello podemos usar Apache JMeter, así como una serie de utilidades que nos darán consejos sobre aspectos que debemos modificar para una mejor optimización de la aplicación.

Empezaremos hablando sobre las pruebas de rendimiento, que según la Wikipedia son:

«pruebas que se realizan, desde una perspectiva, para determinar lo rápido que realiza una tarea un sistema en condiciones particulares de trabajo.»

La herramienta que vamos a utilizar (Apache JMeter) permite realizar pruebas de carga de un servidor web o alojamiento web, está desarrollada 100% en Java y es Open Source. El objetivo es grabar un escenario de pruebas para posteriormente configurarlo con los parámetros de una posible situación real (por ejemplo, indicar el número de usuarios concurrentes).

PASO 1: Tras abrir la aplicación, necesitamos configurarla para indicar qué tipo de pruebas queremos realizar, en nuestro caso, realizaremos una prueba a la página principal de la aplicación. Para ello, agregamos un servidor proxy al banco de trabajo.

apache jmeter servidor proxy

PASO 2: Tras agregar el servidor proxy necesitamos configurar el navegador con los valores indicados en él. Para configurar el navegador Mozilla Firefox ir al menú herramientas y pulsar en Opciones. El navegador mostrará una ventana en la que tendremos que seleccionar la pestaña Avanzado. Una vez allí, pulsar el botón Configuración que se encuentra dentro de la pestaña Red. En esta nueva ventana le indicaremos al navegador que utilice el servidor proxy creado en Apache JMeter.

crear servidor proxy apache jmeter

Nota: Esta configuración es la que hay que poner si se mantienen los valores por defecto del servidor proxy creado. En caso de modificar algún parámetro, como por ejemplo el puerto, se deberá cambiar por el seleccionado.

PASO 3: A continuación hay que crear un grupo de hilos en el cual se almacenarán todas las peticiones detectadas por el servidor proxy.

crear grupo de hilos jmeter

PASO 4: Una vez creado el grupo de hilos hay que configurar el servidor proxy para que almacene las peticiones en él.

PASO 5: Tras iniciar el servidor proxy se guardarán en el grupo de hilos creado todas las peticiones que realice el navegador, por lo que accedemos a la aplicación (en nuestro caso sólo vamos a acceder a la página de inicio, pero puedes navegar por tu aplicación para simular el comportamiento de un usuario). Una vez cargada la aplicación, el elemento Grupo de Hilos tendrá una lista de peticiones, que se corresponden con las peticiones que realiza la página de inicio de la aplicación.

En otros post trataremos sobre la inclusión de Listeners, que permiten analizar la información registrada durante la prueba de rendimiento, y de Asertions, que permiten detectar anomalías y/o problemas en la aplicación.

PASO 6: Ya tenemos todo preparado para iniciar la prueba, por lo que paramos el servidor proxy desde la misma ventana desde que lo iniciamos, y configuramos la prueba en cuestión. La prueba va a consistir en realizar 200 peticiones por cada una de las peticiones registradas por el servidor proxy. Una vez terminadas las 200 peticiones se van a realizar 3 iteraciones más (4 en total).

configurar numero de hilos servidor proxy apache jmeter

PASO 7: Tras configurar el plan de pruebas solo queda lanzar la ejecución de dicho plan. Para ello pulsar CTRL-R. (sería recomendable guardar el escenario grabado antes de iniciar el test).

Post aportado por: Luis Miguel Ceballos Torres y Daniel Prieto Tagua

2 comentarios
  • manuel
    Enviado el 22:25h, 16 junio Responder

    Existen múltiples programas de prueba de carga , de detección de cuellos de botella pero sin duda agileload es uno de los mejores en cuanto a detección de problemas de rendimiento se habla.

Déjanos un comentario