El componente principal de JMeter es denominado Plan de Prueba o Test Plan, en él se definen todos los aspectos relacionados con una prueba de carga, como : parámetros empleados por requisición, tipo de reportes a generarse con los resultados obtenidos, la posible reutilización de requisiciones compuestas por usuarios, entre otros aspectos.
A continuación se ilustra paso a paso un Plan de Prueba utilizado para simular una carga de 50 usuarios solicitando la página principal en determinado sitio.
Estando en la interfase principal de JMeter (ilustrada anteriormente), en la columna izquierda debe observar un icono llamado Test Plan
-- seleccionelo -- al llevar acabo este paso, en la ventana derecha aparecerán varias opciones, aquella encontrada en la parte superior le permite asignar un nombre a su plan de prueba, definalo a su criterio. El resto de las opciones representan funcionalidades avanzadas que no serán descritas para esta simulación.
Definido el nombre, coloquese nuevamente en el icono Test Plan
y oprima el botón derecho de su "mouse", del menú generado seleccione la opción Add -- Thread Group
; para efectos prácticos un "Thread Group" es considerado el grupo de usuarios que desea simular para su aplicación.
Ahora seleccione el icono Thread Group
recientemente creado. Al llevar acabo este paso la ventana derecha mostrará la siguiente serie de opciones :
name
: Utilizado para definir un nombre más descriptivo sobre el grupo de usuarios, como : "Usuarios Esperados"
number of threads
: Equivale al numero de usuarios que se desean simular, en este caso utilizaremos 50.
Ramp-up period
: Es el lapso de tiempo en segundos que se desea tener entre cada grupo de usuarios ("Thread Group") , utilizaremos 15 .
Forever
: Utilizado para indicar si la simulación para grupos de usuarios ("Thread Group") será llevada acabo infinitamente, esto es, si selecciona esta opción indica que desea simular 50 usuarios, esperar 15 segundos ("Ramp-up period"), simular otros 50 usuarios y así sucesivamente. Para esta prueba es recomendable defina 10 ciclos para simular un total de 500 usuarios en cuestión de 150 segundos.
Scheduler
: Finalmente, esta opción permite definir tiempos de arranque para determinados grupos de usuarios ("Thread Group") , para efectos prácticos de esta simulación no será seleccionada esta opción y se iniciará la prueba a nuestra discreción.
Una vez definidas las características del grupo de usuarios ("Thread Group"), coloquese nuevamente en este icono de la columna izquierda y ahora seleccione la opción Add -- Sampler -- HTTP Request
. Lo anterior genera un icono denominado HTTP Request
utilizado para definir las requisiciones de simulación. Si selecciona este último icono aparecerán las siguientes opciones en la ventana derecha :
Server Name or IP
: Empleado para definir la dirección I.P o nombre del servidor donde será llevada acabo la prueba de carga, se utilizará 127.0.0.1
para indicar un servidor local.
port number
: Define el puerto TCP de operación del servidor, será empleado 80
, que es el "default" para
Servidores de Páginas
.
path
: Utilizado para definir la ruta de acceso para llevar acabo la prueba, será definido /index.html
, típicamente la página principal de todo sitio para Internet.
Ahora debe colocarse en el icono de HTTP Request
y oprimir el botón derecho de su "mouse", del menú generado seleccione la opción Add -- Listener -- Graph Results
, así como Add -- Listener -- View Results in Table
. Lo anterior le indica a JMeter que debe generar una gráfica y tabla (respectivamente) con los resultados obtenidos en la simulación.
Finalmente guarde su plan de prueba ("Test Plan") y ejecutelo seleccionando la opción Run -- Start
del menú superior. Si se coloca en el icono Graph Results
mientras se esta llevando acabo la simulación, puede observar como es construida interactivamente la gráfica de resultados.
Como ultima nota, es recomendable que cuando ejecute la presente prueba de carga también realice un análisis sobre el comportamiento del Hardware, para tener una perspectiva global acerca del sistema.
En la siguiente y última sección de esta guia, será descrita otra prueba de carga con funcionalidades más avanzadas.