Dentro
del ciclo de desarrollo de software, uno de los puntos no menos importantes por
nosotros los desarrolladores son las pruebas de rendimiento. Resulta bastante el
crear pruebas unitarias como para que encima de todo dediquemos tiempo para
someter a nuestra aplicación a una carga de estrés y tener idea sobre su
comportamiento bajo varias peticiones concurrentes.
JMeter es una herramientas que nos
permite someter a nuestra aplicación a pruebas de carga, es decir, podemos
simular en nuestros entornos de desarrollo la carga de peticiones concurrentes
que nuestra aplicación podría tener en determinado momento en el entorno productivo.
3.1 Introducción
a JMETER
La aplicación Apache JMeter ™ es un software
de código abierto, una aplicación Java 100% pura diseñada para cargar el
comportamiento funcional de la prueba y medir el rendimiento. Originalmente fue
diseñado para probar aplicaciones web, pero desde entonces se ha expandido a
otras funciones de prueba.
3.2 ¿Qué
puedo hacer con eso?
Apache JMeter se puede utilizar para probar el
rendimiento tanto en recursos estáticos como dinámicos, aplicaciones dinámicas
web.
Se puede usar para simular una carga pesada en
un servidor, grupo de servidores, red u objeto para probar su resistencia o
para analizar el rendimiento general bajo diferentes tipos de carga.
Las características de Apache JMeter incluyen:
La capacidad de carga y el rendimiento prueban
muchas aplicaciones / servidores / tipos de protocolo diferentes:
Web: HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET,
...)
Servicios Web de SOAP / REST
FTP
Base de datos a través de JDBC
LDAP
Middleware orientado a mensajes (MOM) a través
de JMS
Correo: SMTP (S), POP3 (S) e IMAP (S)
Comandos nativos o scripts de shell
TCP
Objetos Java
IDE de prueba con todas las funciones que
permite la grabación rápida del plan de prueba (desde navegadores o
aplicaciones nativas), compilación y depuración.
Modo de línea de comandos (modo no GUI / sin
cabeza) para cargar la prueba desde cualquier SO compatible con Java (Linux,
Windows, Mac OSX, ...)
Un informe HTML completo y listo para
presentar.
Correlación sencilla mediante la capacidad de
extraer datos de los formatos de respuesta más populares, HTML, JSON, XML o
cualquier formato de texto
Portabilidad completa y pureza 100% Java.
El marco completo de subprocesos múltiples
permite el muestreo simultáneo por muchos subprocesos y el muestreo simultáneo
de diferentes funciones por grupos de subprocesos separados.
Caché y análisis / reproducción fuera de línea
de los resultados de las pruebas.
Núcleo altamente extensible:
Los muestreadores enchufables permiten
capacidades de prueba ilimitadas.
Muestreadores de secuencias de comandos
(lenguajes compatibles con JSR223 como Groovy y BeanShell)
Se pueden elegir varias estadísticas de carga
con temporizadores conectables.
Los complementos de análisis y visualización
de datos permiten una gran extensibilidad y personalización.
Las funciones se pueden utilizar para
proporcionar una entrada dinámica a una prueba o para proporcionar manipulación
de datos.
Fácil integración continua a través de
bibliotecas de código abierto de terceros para Maven, Gradle y Jenkins.
3.3 ¿Cómo lo hago?
Usando JMeter para entender cómo usarlo
Referencia del componente para tener
información detallada para cada elemento de prueba
Funciones de referencia para tener información
detallada y ejemplos para cada función.
Referencia de propiedades para todas las
propiedades que le permiten personalizar JMeter
Documentación API Javadoc
Preguntas frecuentes de JMeter (Wiki)
3.4 JMeter Wiki
Creación de JMeter y complementos para uso
avanzado
JMeter no es un navegador
JMeter no es un navegador, funciona a nivel de
protocolo. En lo que respecta a servicios web y servicios remotos, JMeter se
parece a un navegador (o más bien, a múltiples navegadores); sin embargo,
JMeter no realiza todas las acciones admitidas por los navegadores. En
particular, JMeter no ejecuta el Javascript que se encuentra en las páginas
HTML. Tampoco representa las páginas HTML como lo hace un navegador (es posible
ver la respuesta como HTML, etc., pero los tiempos no se incluyen en ninguna
muestra, y solo una muestra en un hilo se muestra a la vez).
3.5
Ejecución de JMETER en Windows 7/8/10
3.5.1 Requisitos:
Java 8 o superior
Librerías JDK/SDK 1.4 de sun o superior
Librería JDK 5.0 de sun o superior.
3.5.2 Instalación:
1.- Verificamos que versión de java está
instalado en nuestro equipo.
Entramos
al cmd y ejecutamos el comando java –version
2.- Descargamos Apache JMETER desde:
Descargar el archivo apache-jmeter-5.0.zip
3.- Extraemos o descomprimimos el Apache
JMeter
4.- Una vez extraído o descomprimido el
archivo, nos dirigimos a la Carpeta Bin y ejecutamos el archivo jmeter.bat como
administrador
5.- Se abrirá dos ventanas:
Una de la consola de
ejecución de JMeter
Y el otro el programa en
sí.
3.6 PRUEBAS DE CARGA CON JMETER
Se va a ingresar
datos en el JMeter a 2 páginas web con los siguientes parámetros:
Usuario
|
Segundos
|
Repeticiones
|
30
|
5
|
1
|
60
|
10
|
1
|
Las páginas web
de prueba son las siguientes:
No hay comentarios.:
Publicar un comentario