Instalacion y Uso de JMeter

20

Transcript of Instalacion y Uso de JMeter

Uso de JMeter | Moisés Araya

[1]

Contenido

JMeter – Introducción Instalación y uso. ....................................................................... 2

Parte 1 - Introducción .......................................................................................... 2

Características de JMETER. ................................................................................. 2

Protocolos soportados ........................................................................................ 2

Como trabaja JMeter. ........................................................................................ 2

Lista de sistemas operativos compatibles. ................................................................ 3

Parte 2 - Instalación ............................................................................................. 3

Parte 3 - Grabación de test Web JMeter ..................................................................... 6

Procedimiento ................................................................................................. 6

Parte 4 - Test Servicio Web JMeter .......................................................................... 12

Procedimiento ................................................................................................ 12

Parte 5 - Resultados JMeter ................................................................................... 16

Interpretar resultados. ...................................................................................... 17

Uso de JMeter | Moisés Araya

[2]

JMeter – Introducción Instalación y uso.

Parte 1 - Introducción

Jmeter es una aplicación Open Source JAVA diseñada para realizar pruebas funcionales y medir el rendimiento, utilizado para realizar pruebas de estrés web y de otros servicios (SMTP, SOAP, JDBC, FTP).

Características de JMETER.

Multiplataforma

Licencia Open Source

Independiente de la plataforma

Fácil instalación

Interfaz amigable

Visualización de resultados

Soporte multi protocolo

Extensible

Marco de trabajo multi-hilo

Protocolos soportados

Web - HTTP, HTTPS

SOAP / REST

FTP

Bases de datos vía JDBC

LDAP

Mensajes orientados a middleware (MOM) vía JMS

Correo - SMTP(S), POP3(S) and IMAP(S)

MongoDB (NoSQL)

Comandos nativos o scripts shell

TCP

Como trabaja JMeter.

1. JMeter simula un grupo de usuarios que envían requests a un servidor objetivo.

2. Reúne estadísticas del servidor bajo prueba (objetivo).

3. Genera reportes en diferentes formatos (csv, jtl)

Uso de JMeter | Moisés Araya

[3]

Lista de sistemas operativos compatibles.

Sistema Operativo Máquina Virtual Java Arquitectura

Free BSD 9.0 Open JDK 6 amd64

Linux 2.4, 2.6, 3.1, 3.2 Sun JDK 5, 6, 7 and Open JDK 6, Open JDK 7, Oracle JDK 7

i386, amd64

Mac OS Oracle JDK 6, Oracle JDK 7, Apple JDK

64 bits

Window 8.1 Oracle JDK 7 64 bits

Window 7 Oracle JDK 6, Oracle JDK 7 32/64 bits

Parte 2 - Instalación

1. Descargar e instalar JDK:

http://www.oracle.com/technetwork/java/javase/downloads/index.html

2. Chequear versión de Java.

3. Crear la variable de entorno JAVA_HOME.

4. Descargar JMeter: https://jmeter.apache.org/download_jmeter.cgi

Uso de JMeter | Moisés Araya

[4]

5. Descomprimir archivo en directorio a elección.

Estructura de carpetas:

/bin: Contiene scripts para iniciar JMeter

/docs: Documentación de JMeter

/extras: archivos extras relacionados con ant

/lib/: Contiene las librerías Java requeridas por JMeter

/lib/ext: Contiene los archivos jar para los protocolos JMeter

/lib/junit: Contiene la librería JUnit usada por JMeter

/printable_docs:

6. Configurar HEAP Size para mejor rendimiento.

Editar el archivo jmeter.bat y aumentar la memoria por defecto.

Antes Después

set HEAP=-Xms512m –Xmx512m set HEAP=-Xms1024m -Xmx2048m

Uso de JMeter | Moisés Araya

[5]

7. Configurar log.

a. Editar el archivo jmeter.properties ubicado en el directorio \bin y modificar según se muestra.

log_file='jmeter_'yyyy-MM-dd-HH-mmss'.log'

8. Guardar y cerrar archivo.

9. Ejecutar JMeter.

10. Ir al directorio /bin y ejecutar jmeter.bat

Interfaz gráfica JMeter.

Referencia: http://jmeter.apache.org/

Uso de JMeter | Moisés Araya

[6]

Parte 3 - Grabación de test Web JMeter

Procedimiento

1. Ejecutar JMeter – Agregar Grupo de Hilos.

a. Clic derecho sobre Plan de Prueba – Añadir – Grupo de Hilos.

b. En el Grupo de Hilos se definen la cantidad de usuarios virtuales a ejecutar el plan de

pruebas, en este caso es solo 1 usuario.

2. Agregar Valores por Defecto HTTP.

a. Clic derecho sobre Grupo de Hilos – Elemento de Configuración – Valores por Defecto

para Petición HTTP.

b. Configurar:

i. URL, ejemplo: http://www.fonasa.cl

ii. Puerto: 443

iii. Implementación HTTP: HttpClient3.1

iv. Protocolo: HTTPS

3. Agregar Gestor de Cookies.

a. Clic derecho sobre Grupo de Hilos – Elemento de Configuración – Gestor de Cookies

HTTP.

Uso de JMeter | Moisés Araya

[7]

4. Agregar Cache HTTP.

a. Clic derecho sobre Grupo de Hilos – Elemento de Configuración – Gestor de la Cache

HTTP.

5. Agregar Controlador de Grabación.

a. Clic derecho sobre Grupo de Hilos – Controlador Lógico – Controlador Grabación.

6. Agregar Grabador Proxy a Workbench.

a. Clic derecho Banco de Trabajo – Elemento de NoPrueba – Servidor Proxy HTTP.

b. Configurar:

I. Puerto: 7080

II. Controlador objetivo: Plan de Pruebas > Grabación Proxy > Controlador

Grabación.

III. Parámetros muestra HTTP > Tipo: HttpClient3.1

IV. Patrones a excluir

Uso de JMeter | Moisés Araya

[8]

Patrones a incluir y excluir.

7. Configurar Proxy en Navegador Web (Firefox)

a. Clic en Opciones –Avanzado – Red – Configuraciones y asignar valores según se muestra

en imagen.

Uso de JMeter | Moisés Araya

[9]

8. Arrancar Servidor Proxy HTTP.

a. Clic sobre Banco de Trabajo – Servidor Proxy HTTP – Arrancar.

9. Aceptar en aviso de certificado digital.

10. Ejecutar el navegador Web para realizar el flujo definido.

11. Una vez realizada la navegación, clic sobre Parar en Servidor Proxy HTTP.

12. Revisar el Plan de pruebas y limpiar las solicitudes innecesarias.

Uso de JMeter | Moisés Araya

[10]

13. Modificar el nombre de las solicitudes por unas más descriptivas.

14. Guardar el test plan.

15. Agregar Receptores para la visualización de resultados.

a. Clic derecho sobre Grupo de Hilos – Receptores – Reporte resumen/Ver Resultados en

Árbol/Ver Árbol de Resultados.

16. Guardar cambios y ejecutar plan de pruebas.

Uso de JMeter | Moisés Araya

[11]

17. Verificar resultados en Receptor Reporte resumen.

Uso de JMeter | Moisés Araya

[12]

Parte 4 - Test Servicio Web JMeter

Procedimiento

1. Ejecutar JMeter – Agregar Grupo de Hilos.

a. Clic derecho sobre Plan de Prueba – Añadir – Grupo de Hilos.

b. En el Grupo de Hilos se definen la cantidad de usuarios virtuales a ejecutar el plan de

pruebas, en este caso es solo 1 usuario.

2. Agregar muestreador SOAP/XML-RPC.

a. Clic derecho sobre el Grupo de Hilos – Añadir – Muestreador – Petición SOAP/XML-RPC

Uso de JMeter | Moisés Araya

[13]

Vista de muestreador SOAP.

3. Se utilizará un Servicio Web público para consultar el clima.

4. Configuración:

URL: la dirección del endpoint del WS.

o http://www.webservicex.net/globalweather.asmx?WSDL

SOAP action: es la URL donde se aloja el servicio.

o http://www.webserviceX.NET/GetWeather

Datos SOAP/XML: Contenido del request con datos validos a consultar.

<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <GetWeather xmlns="http://www.webserviceX.NET"> <CityName>santiago</CityName> <CountryName>chile</CountryName> </GetWeather> </soap:Body> </soap:Envelope> </soapenv:Envelope>

Uso de JMeter | Moisés Araya

[14]

Vista del muestreador SOAP configurado.

5. Agregar Receptores para la visualización de resultados.

a. Clic derecho sobre Grupo de Hilos – Receptores – Reporte resumen/Ver Resultados en

Árbol/Ver Árbol de Resultados.

6. Modificar el nombre del Grupo de Hilos y el nombre de la petición SOAP para una mayor

comprensión.

7. Guardar el test plan.

Uso de JMeter | Moisés Araya

[15]

8. Ejecutar el plan de pruebas.

9. Verificar resultados en cualquiera de los receptores agregados.

10. En receptor Arbol de resultados, formatear respuesta a XML y verificar resultados en campo

“Datos de Respuesta”.

Uso de JMeter | Moisés Araya

[16]

Parte 5 - Resultados JMeter

JMeter recopila información de los resultados mientras se ejecutan los planes de prueba por medio de los Listeners o Receptores, estos resultados se pueden mostrar en forma de:

Árbol.

Tablas.

Gráficos.

Archivos de registros.

Vista de resultados en tipo tabla.

Vista de resultados en forma de arbol.

Uso de JMeter | Moisés Araya

[17]

Vista de resultados en tipo gráfico.

1. Configurar formato de registro.

Editar el archivo jmeter.properties ubicado en el directorio /bin, sección Results file configuration y descomentar la línea jmeter.save.saveservice.output_format=csv

#--------------------------------------------------------------------------- # Results file configuration #--------------------------------------------------------------------------- # This section helps determine how result data will be saved. # The commented out values are the defaults. # legitimate values: xml, csv, db. Only xml and csv are currently supported. #jmeter.save.saveservice.output_format=csv

Guardar cambios y cerrar archivo.

Interpretar resultados.

Uso de JMeter | Moisés Araya

[18]

Detalle de los campos

Campos Descripción

Etiqueta Nombre de las solicitudes configurados en plan de pruebas.

Muestras Número de solicitudes configurados para un hilo.

Media Es el tiempo de respuesta promedio para un conjunto de resultados, está dado en ms.

Min Es la solicitud que tardo menos en responder, dado en ms.

Max Es la solicitud que tardo más en responder, dado en ms.

Desviación estándar Es la medición de cuanto se separan los datos.

Error El porcentaje de solicitudes con errores.

Rendimiento Es el número de solicitudes por unidad de tiempo (segundos, minutos, horas) que son enviados durante el test.

Kb/sec Rendimiento medido en Kbytes por segundo.

Avg/Bytes Tamaño medio de respuesta del servidor en bytes.

2. Configurar formato hora para reportes.

Editar el archivo jmeter.properties del directorio \bin y modificar según se muestra.

jmeter.save.saveservice.timestamp_format=HH:mm:ss

3. Guardar resultados en archivo.

Crear archivo con extensión .CSV

En receptor Reporte Resumen – Escribir todos los datos a archivo – Clic en Navegar y

seleccionar archivo creado.

Guardar cambios.

Uso de JMeter | Moisés Araya

[19]

Ejecutar test.

Abrir el archivo y verificar contenido.

14:34:51;145;1_Home_Asegurados;200;Portal_FONASA 1-1;true;20096;1;2;141;1;0;FONASA-EQUIPO3 14:34:51;105;2_Clic_Prestadores;200;Portal_FONASA 1-1;true;13207;1;1;105;1;0;FONASA-EQUIPO3 14:34:51;105;3_Clic_Empleadores;200;Portal_FONASA 1-1;true;12069;1;1;105;1;0;FONASA-EQUIPO3 14:34:52;99;4_Clic_Informacion_Institucional;200;Portal_FONASA 1-1;true;12048;1;1;99;1;0;FONASA-EQUIPO3

En resultados, los campos de interés son el primero (Hora de ejecución) y el segundo que es el tiempo de respuesta (dado en ms), opcionalmente estos se pueden exportar a Excel y graficar según los requerimientos.

Ejemplo de grafico tiempos de respuesta vs hora de ejecución.

Referencia: http://jmeter.apache.org/usermanual/listeners.html