Sunteți pe pagina 1din 60

Pautas para realizar preubas

con JMETER

Jmeter

http://jakarta.apache.org/jmeter/
Apache JMeter is a 100% pure Java desktop application designed
to load test functional behavior and measure performance. It was
originally designed for testing Web Applications but has since
expanded to other test functions.
What can I do with it? - Apache JMeter may be used to test
performance both on static and dynamic resources (files, Servlets,
Perl scripts, Java Objects, Data Bases and Queries, FTP Servers
and more). It can be used to simulate a heavy load on a server,
network or object to test its strength or to analyze overall
performance under different load types. You can use it to make a
graphical analysis of performance or to test your server/script/object
behavior under heavy concurrent load.
Es una buena herramienta para probar el
rendimiento de aplicaciones web

Plan de Pruebas
Para realizar un test, se debe configurar
un plan de pruebas.
Para ello se pincha sobre el icono que
aparece en el marco de la izquierda
denominado Plan de Pruebas. Aparece
en el marco de la derecha un nuevo panel
en el que se puede configurar diversos
parmetros.

PASOS A REALIZAR

Grupo de hilos
Lo primero que se aade al plan de pruebas es
un grupo de hilos de ejecucin que permita
definir el nmero de usuarios a simular.
Se puede especificar:
Nmero de hilos a ejecutar en paralelo.
Nmero de iteraciones que har cada hilo.
Planificar la ejecucin de la prueba, indicando hora
de arranque y parada, duracin del test en segundos
y tiempo de arranque del mismo.
Accin a realizar en caso de error en el test por un
hilo(para el hilo o parar todos).

Grupo de hilos

Grupo de hilos

Peticiones HTTP
Se pueden definir las propiedades por
defecto para las peticiones HTTP que
puedan aparecer en un plan de
pruebas.De esta forma al definir una
peticin http, no es necesario rellenar
todos los campos de informacin, ya que
heredarn las propiedades por defecto
definidas.

Grupo de hilos

Grupo de hilos

Gestin de Cookies
En un plan de pruebas, se puede simular
el comportamiento de las Cookies,
aadiendo un Gestor de Cookies HTTP
al Grupo de hilos.
Se puede borrar la cookie en cada
iteracin del test, o establecer los valores
que se deseen para las cookies.

Gestin de Cookies

Gestin de Cookies

Controladores
Jmeter posee dos tipos de controladores
de la pruebas:
MuestreadoresPermiten enviar peticiones a
un servidor. Se configuran usando
Elementos de Configuracin.
Controladores lgicosPermiten controlar el
comportamiento de la prueba, y tomar
decisiones en funcin de situaciones, valores,
condiciones, etc. Cada controlador puede
tener uno o ms Elementos por defecto.

Controlador Simple
Como ejemplo, se va a ser crear un
controlador simple para agrupar una serie
de peticiones.
Para ello se selecciona sobre el Grupo de
hilos, y con botn derecho se elige
AadirControlador LgicoControlador
Simple

Controlador Simple

Controlador Simple

Peticin HTTP
A continuacin, se define una peticin
HTTP, para lo cual se selecciona sobre el
controlador simple que se ha creado, y
con botn derecho se elige la opcin de
AadirMuestreadorPeticin HTTP, y
se le da un nombre

Peticin HTTP

Peticin HTTP

Peticin HTTP
En la pantalla de Peticin HTTP se pueden
configurar los siguientes parmetros:

Mtodo: GET o POST


Path del recurso a pedir.
Redireccin automtica.
Seguir las redirecciones indicadas por el resultado de
la peticin.
Usar KeepAlive: Mantener la conexin viva entre
distintas peticiones.
Envo de parmetros en la request.
Envo de un fichero adjunto a la request.

Peticin HTTP
Los parmetros que no se completen
sern heredados del elemento de
configuracin Valores por Defecto para
peticiones HTTP.

Aserciones
A una peticin se le puede aadir
aserciones que comprueban que la
ejecucin de la peticin es correcta.
Para ello se selecciona la peticin HTTP, y
con botn derecho se hace click sobre
AadirAsercionesAsercin de
Respuesta.

Aserciones

Se pueden aadir los siguientes tipos de Aserciones:


Asercin de respuesta, para comprobar la respuesta. Puede
comprobarse el texto, o la URL, o el cdigo de respuesta, o el mensaje
de respuesta, e indicar si coincide con una serie de patrones, o no.
Asercin de duracin, para indicar un tiempo mximo de ejecucin.
Asercin HTML, para verificar que el HTML, XML o XHTML est
correctamente construido (utiliza Tiny).
Asercin MD5Hex, para verificar que la suma MD5 es la especificada.
Asercin de tamao, para verificar que el tamao es <,>, =, etc que uno
especificado
Asercin XML, para verificar que el resultado es un XML bien formado.
Asercin Beanshell, para programacin de pequeos shell scripts que
realizan verificaciones a medida.

Aserciones

Aserciones
Por ejemplo se puede aadir una asercin
de respuesta, en la que se establece la
condicin de que el cdigo de respuesta
sea 200, corresponde a una pgina
servida correctamente.

Aserciones

Preprocesadores
En un plan de pruebas se pueden aadir
preprocesadores que realicen acciones antes de
enviar la Request:
Contador: Para crear una variable contador, que
puede ser referenciada en cualquier parte del test
Parmetros de usuario: parmetros definidos por el
Usuario, que nos van a permitir definir una especie de
constantes dentro del test.
Parser de enlaces HTML: Parsea la respuesta HTML
del servidor, y extrae los links y forms.
Mscara de parmetros HTML.
Modificador de reescritura HTTP URL.
Modificador de parmetros de usuario HTTP.

Posprocesadores
En un plan de pruebas se pueden aadir
postprocesadores que realicen acciones despus de
enviar la Request:
Extractor de Expresiones regulares: Extrae cadenas de la
respuesta (contenido o cabeceras) que cumplan una expresin
regular
Manejador de accin para status de resultados: Permite indica
la accin a tomar despus de que se produzca un error:
continuar, parar el thread, o parar el test.
Almacenar respuesta en un archivo: Permite almacenar en un
fichero la respuesta obtenidas (todas o slo las errneas)
Generar resumen de resultados: Resumen de informacin que
se enva a la salidad cada cierto tiempo (utilizado en modo
batch)

Otras caractersticas
Permite activar o desactivar una parte del test,
lo que es til cuando se est desarrollando un
test largo, y se desea deshabilitar ciertas partes
iniciales que sean muy pesadas o largas.
Se pueden encadenar las Request que se
deseen, y mover los elementos dentro del
rbol.Aquellas acciones ms externas afectan a
las ms internas del rbol de test

Listener
Para lanzar un test de forma interactiva,
se necesita crear un listener que recupere
informacin , dentro del Grupo de hilos.

Listener

Algunos de los tipos de Listener:


Resultados de aserciones: Muestra la URL de cada peticin e indica los errores
que se produzcan (aserciones que no se han cumplido) en el test.
Grfico de Resultados completo: Simplemente muestra el tiempo
Grfico de Resultados: Muestra un grfico con los tiempos medio, desviacin,
throughput, etc. de la ejecucin del plan de prueba.
Monitor de Resultados: Slo funciona en Tomcat 5
Escrito de datos simple: Vuelca los resultados a un fichero.
Visualizador Spline: Grfico de tiempos como spline.
Informe Agregado: Muestra una tabla con una fila por cada URL solicitada,
indicando el tiempo min, max, medio, etc. Es una tabla que totaliza por URL.
Vista de Resultados en Tabla: Muestra una tabla con todas las respuestas, la
URL, tiempo y resultado de ejecucin de cada una de ellas.
Vista de Resultados en rbol: Muestra un rbol con todas las respuestas y sus
tiempos.

Listener
Para ello se selecciona el Grupo de
Hilos, y se clickea sobre
AadirListener Informe Agregado

Listener

Listener

Ejecucin
Para ejecutar se pulsa sobre la opcin del
men LanzarArrancar.
La ejecucin del Plan de Pruebas ejecuta
los threads configurados en Grupo de
hilos. Posicionando el ratn sobre
Informe Agregado se ve la informacin
sobre la prueba.

Preparacin de pruebas con


Proxy
Otra forma para generar un caso de prueba
es a travs de una navegacin de usuario.
Para ello hay que indicar a Jmeter que
actu como proxy, para capturar la
navegacin del caso de prueba.
Se pulsa en Banco de Trabajo con el botn
derecho y se elige Elementos no de
Prueba-> Servidor Proxy Http.

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy
Se configuran los parmetros del Proxy en
la pantalla que aparece en el marco de la
derecha.

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy
Se arranca el Proxy, usando el botn
Arrancar que aparece en el mismo.

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy
Se configura el navegador que se use
para que utilice el Proxy para filtrar las
peticiones.
Por ejemplo, configuramos el firefox.

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy
Una vez configurado el servidor y el
navegador, tan slo hay que ir navegando
por las diferentes pginas sobre las que
se quiere realizar las pruebas. De forma
automtica, Jmeter,ir registrando en la
consola del Jmeter las pginas sobre las
que se quiere realizar las pruebas.

Preparacin de pruebas con


Proxy
Como ejemplo vamos a hacer una
navegacin sobre Proyecto Agrega, y
desde all se va a realizar la bsqueda de
un contenido, su previsualizacin, y por
ltimo la descarga del contenido.
Para ello basta realizar la interaccin
comentada con el navegador.

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy
Internamente en Jmeter se han ido
generando los siguientes elementos de
prueba en el Banco de Pruebas

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy
A continuacin, se puede parar el Proxy, y
preparar diferentes pruebas con los casos
de pruebas generados.
Por ejemplo se puede preparar una prueba
de crear 5 hilos en paralelo, subidos en el
momento de lanzamiento, tiempo 0, y
realizar 2 iteraciones. Adems pegamos en
el grupo de hilos,los casos de prueba
generados.

Preparacin de pruebas con


Proxy

Preparacin de pruebas con


Proxy
Aadimos un par de salidas para mostrar
los resultados de las pruebas. Por
ejemplo podemos mostrar un Grfico de
resultados, Summary Report, y Ver
Resultados en rbol

Preparacin de pruebas con


Proxy

Explotacin de la informacin
A partir de los datos que se recuperan se
puede estudiar diferentes caractersticas
relativos al rendimiento. Por ejemplo un
dato que hemos observado al hacer estas
pruebas, es que el logo de las CCAA, falla
en un 100% de los casos, o por ejemplo
que hay una ralentizacin importante al
realizar las bsquedas.

Explotacin de la informacin
Otra forma de explotarlo consiste en variar
los parmetros de los grupos de hilos, y
hacer una comparativa conjunta de lo que
resulta en cada caso, viendo como
responden los nodos al aumento de
usuarios concurrentes.

S-ar putea să vă placă și