Jmeter Quick Guide - Copia - En.es

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 79

Traducido del inglés al español - www.onlinedoctranslator.

com
JMETER - GUÍA RÁPIDA
http://www.tutorialspoint.com/jmeter/jmeter_guia_rapida.htm Coderecho de autor
©tutorialspoint.com

JMETER - DESCRIPCIÓN
GENERAL
Antes de entrar en los detalles de JMeter, primero comprendamos algunas jergas asociadas con
la prueba de cualquier aplicación.

Prueba de rendimiento− Esta prueba establece la mejor expectativa de


rendimiento posible bajo una determinada configuración de infraestructura.
También destaca al principio del proceso de prueba si es necesario realizar
algún cambio antes de que la aplicación entre en producción.

Prueba de carga− Esta prueba se utiliza básicamente para probar el sistema bajo la carga
superior para la que fue diseñado.

Prueba de estrés− Esta prueba es un intento de romper el sistema abrumando sus


recursos.

¿Qué es JMeter?
JMeter es un software que puede realizar pruebas de carga, pruebas funcionales comerciales
orientadas al rendimiento, pruebas de regresión, etc., en diferentes protocolos o tecnologías.

stefano mazocchide Apache Software Foundation fue el desarrollador original de JMeter. El


escribioitprimarioytopruebastelmirendimientomioFApachemiJServ ahora llamado proyecto Apache
Tomcat.ApacheMás tarde, rediseñamos JMeter para mejorar la GUI y agregar capacidades de prueba
funcional.

JMeter es una aplicación de escritorio Java con una interfaz gráfica que utiliza la API gráfica de
Swing. Por lo tanto, puede ejecutarse en cualquier entorno./ estación de trabajo que acepta una
máquina virtual Java, por ejemplo: Windows, Linux, Mac, etc.

Los protocolos admitidos por JMeter son:

Web − HTTP, sitios HTTPS 'web 1.0' web 2.0 ajax, flexandflex − ws − amf
Servicios Web − SOAP/ Base de
datos XML-RPC a través del
directorio de controladores JDBC −
LDAP
MensajeríagramoorientedserviciomiviaJMS
ervicio S: POP3, IMAP, SMTP
Servicio FTP

Características de JMeter
Las siguientes son algunas de las características de JMeter:

Al ser un software de código abierto, está disponible

gratuitamente. Tiene una GUI simple e intuitiva.

JMeter puede realizar pruebas de carga y rendimiento para muchos tipos de servidores
diferentes: Web: HTTP, HTTPS,JABÓN,bases de datosmiviaJDBC,LDAP,JMS,Maiyo -POP3,etc..

Es una herramienta independiente de la plataforma. En Linux/Unix, JMeter se puede invocar


haciendo clic en el script de shell de JMeter. En Windows, se puede invocar iniciando el
archivo jmeter.bat.
Tiene compatibilidad total con componentes ligeros y Swing precompiladosJARusespackagesjavax.
ritmo. ∗ .
JMeter almacena sus planes de prueba en formato XML. Esto significa que puede generar un
plan de prueba utilizando un editor de texto.

Su marco completo de subprocesos múltiples permite el muestreo concurrente por muchos


subprocesos y el muestreo simultáneo de diferentes funciones por grupos de subprocesos
separados.
Es altamente extensible.

También se puede utilizar para realizar pruebas automatizadas y funcionales de las


aplicaciones.

¿Cómo funciona JMeter?


JMeter simula un grupo de usuarios que envían solicitudes a un servidor de destino y devuelve
estadísticas que
muestranelmirendimiento/funcionalidadyoFelmiobjetivotservidor/aplicaciónnorteviamesas,gráficos,etc..

Eche un vistazo a la siguiente figura que muestra cómo funciona JMeter:

JMETER - MEDIO
AMBIENTE
JMeteres un marco para Java, por lo que el primer requisito es tener JDK instalado en su máquina.

Requisitos del sistema

JDK 1.6 o superior.

Memoria Sin requisito mínimo.

Espacio del disco Sin requisito mínimo.

OperandoSistema Sin requisito mínimo.

Paso 1 − Verificar la instalación de Java


En primer lugar, verifique si tiene Java instalado en su sistema. Abra su consola y ejecute uno de los
siguientes comandos java según el sistema operativo en el que esté trabajando.

sistema Tarea Dominio


operativo
ventanas Abrir Consola de c:\> versión java
Comando
linux Abra la terminal de $ Java -versión
comando
Mac terminal abierta maquina: ~ joseph$ java -version

Si tiene Java instalado en su sistema, obtendrá una salida adecuada según el sistema operativo en el
que esté trabajando.

OSSalida

ventanas
versión java"1.7.0_25"

JavaTM SE Runtime Environment compilación 1.7.025 − b15

Java HotSpotTM 64-Bit Server VM build23.25 − b01, modo mixto

linux
versión java"1.7.0_25"

JavaTM SE Runtime Environment compilación 1.7.025 − b15

Java HotSpotTM 64-Bit Server VM build23.25 − b01, modo mixto

Mac
versión java"1.7.0_25"

JavaTM SE Runtime Environment compilación 1.7.025 − b15

Java HotSpotTM 64-Bit Server VM build23.25 − b01, modo mixto

Si no tiene Java instalado, instale el kit de desarrollo de software de Java SDK


desdehttp://www.oracle.com/technetwork/java/javase/downloads/index.html .WmiArkansasmias
umiendogramojavaa 1.7.0_25 como la versión instalada para este tutorial.

Paso 2: establecer el entorno de Java


Establezca la variable de entorno JAVA_HOME para que apunte a la ubicación del directorio base,
donde Java está instalado en su máquina. Por ejemplo −

OSSalida

Conjunto de ventanas la variable de entorno JAVA_HOME a C:\Program


Files\Java\jdk1.7.0_25

LinuX exportartJAVA_HOME=/usr/local/java-actual

MamáC exportartJAVA_INICIO=/Biblioteca/Java/Inicio

Agregue la ubicación del compilador de Java a la ruta del sistema.

OSSalida

Ventanas Appendelmicuerda;C:\Program Files\Java\jdk1.7.0_25\bin hasta el final de la


variable del sistema, Path.
linux exportar RUTA=RUTA: JAVA_HOME/bin/
macnot requerido

Verifique la instalación de Java usando el comando java -version como se explicó anteriormente.

Paso 3 − Descarga JMeter


Descargue la última versión de JMeter desdehttp://jmeter.apache.org/download_jmeter.cgi. Para este
tutorial,wmidescargardapache-jmeter-2.9 undcopiarditEn toC:\>JMetercarpeta.

La estructura del directorio debería verse como se

muestra a continuación: apache-jmeter-2.9


apache-jmeter-2.9\bin
apache-jmeter-2.9\docs
apache-jmeter-2.9\extras
apache-jmeter-2.9\lib\
apache-jmeter-2.9\lib\ext
apache-jmeter-2.9\lib\junit
apache-jmeter-2.9\printable_docs

Puede cambiar el nombre del directorio principal, es decir, apache − jmeter − 2.9 si lo desea, pero
no cambie ninguno de los nombres de los subdirectorios.

Paso 4 − Ejecutar JMeter


Después de descargar JMeter, vaya al directorio bin. En este caso, es
/home/manisha/apache-jmeter-2.9/bin. Ahora haga clic en lo siguiente −

OSSalida ventanas

jmeter.batLinuxjmete

r.sh

Macjmeter.sh

Después de una breve pausa, debería aparecer la GUI de JMeter, que es una aplicación Swing, como
se ve en la siguiente captura de pantalla:
Esta es la página principal y la página predeterminada de la herramienta.

JMETER - PLAN DE PRUEBA DE CONSTRUCCIÓN


¿Qué es un plan de prueba?
Un plan de prueba se puede ver como un contenedor para ejecutar pruebas. Define qué probar y
cómo hacerlo. Un plan de prueba completo consta de uno o más elementos, como grupos de
subprocesos, controladores lógicos, controladores de generación de muestras, escuchas,
temporizadores, aserciones y elementos de configuración. Un plan de prueba debe tener al menos
un grupo de subprocesos.

Escribir un plan de prueba


Siga los pasos que se indican a continuación para escribir un plan de prueba:

Paso 1 − Inicie la ventana JMeter


Abra la ventana de JMeter haciendo clic en /home/manisha/apache-jmeter-2.9/bin/jmeter.sh.
La ventana de JMeter aparecerá como se muestra a continuación:

Esta es una ventana de JMeter simple y en blanco sin ningún elemento adicional agregado. Contiene
dos nodos:

Plan de pruebanodo− es donde se guarda el plan de prueba real.

nodo de banco de trabajo− Simplemente proporciona un lugar para almacenar


temporalmente elementos de prueba mientras no está enusar,pararpropósitos de
copiar/pegar. Cuando guarda su plan de prueba, los elementos de Workbench no se guardan con él.

Paso 2 − Agregar/Eliminar elementos


Elementos (que se discutirán en el próximo capítuloElementos del plan de prueba) se puede
agregar a un plan de prueba haciendo clic con el botón derecho en el nodo Plan de prueba y
eligiendo un nuevo elemento de la lista "agregar".

Alternativamente, puede cargar un elemento desde un archivo y agregarlo eligiendo la opción


"combinar" o "abrir".

Por ejemplo, agreguemos un elemento de grupo de subprocesos a un plan de prueba como se muestra
a continuación:
Para eliminar un elemento, asegúrese de que el elemento esté seleccionado, haga clic derecho en el
elemento y elija la opción "eliminar".

Paso 3: cargar y guardar los elementos


Para cargar un elemento desde un archivo:

Haga clic derecho en el elemento de árbol existente al que desea agregar el elemento
cargado. Seleccione Fusionar.
Elija el archivo donde guardó los elementos. JMeter
fusionará los elementos en el árbol.

De forma predeterminada, JMeter no guarda el elemento, debe guardarlo explícitamente.


Para guardar elementos del árbol:

Haga clic derecho en el elemento.


Elija la opción Guardar selección como...

JMeter guardará el elemento seleccionado, además de todos los elementos secundarios debajo
de él. De forma predeterminada, JMeter no guarda los elementos, debe guardarlos
explícitamente como se mencionó anteriormente.

Paso 4 − Configuración de los elementos del árbol


UnyelementotinorteelmipruebatPlánorteCalifornianortebmiconfigurardusandogramoelmicontrolspresentet
inorteJMetro'smano derechamarco lateral d. Estos controles le permiten configurar el
comportamiento de ese elemento de prueba en particular. Por ejemplo, el grupo de subprocesos
se puede configurar para una cantidad de usuarios, períodos de aceleración, etc., como se
muestra a continuación:

Paso 5 − Guardar el plan de prueba


Puede guardar un plan de prueba completo utilizando Guardar o "Guardar plan de prueba
como..." en el menú Archivo.
Paso 6: ejecutar el plan de prueba
Puede ejecutar el plan de prueba haciendo clic en StartControl + r en el elemento del menú Ejecutar.
Cuando JMeter comienza a ejecutarse, muestra un pequeño cuadro verde en el extremo derecho de
la sección justo debajo de la barra de menú.

Los números a la izquierda del cuadro verde son el número de subprocesos activos/ número total de
hilos. Estos solo se aplican a una prueba ejecutada localmente; no incluyen ningún subproceso iniciado en
sistemas remotos cuando se utiliza el modo cliente-servidor.

Paso 7 − Detener la pruebaPlan


Puedes detener tu pruebade dos maneras -

Uso de Control de parada + ′.′. Detiene los subprocesos inmediatamente si es posible.

Uso del control de apagado +′,′. Solicita que los subprocesos se detengan al final de cualquier
trabajo actual.

JMETER - ELEMENTOS DEL PLAN DE PRUEBA


Un plan de prueba de JMeter se compone de los elementos de prueba que se analizan a
continuación. Un plan de prueba se compone de al menos un grupo de subprocesos. Dentro de
cada grupo de subprocesos, podemos colocar una combinación de uno o más de otros elementos:
Sampler, Logic Controller, Configuration Element, Listener y Timer. Cada muestra puede estar
precedida por uno o más elementos de preprocesador, seguidos por un elemento de posprocesador
y/o un elemento de afirmación. Veamos cada uno de estos elementos en detalle:

Grupo de hilos
Los elementos del grupo de subprocesos son los puntos iniciales de su plan de prueba. Como
sugiere el nombre, los elementos del grupo de subprocesos controlan la cantidad de subprocesos
que JMeter utilizará durante la prueba. También podemos controlar lo siguiente a través de
Thread Group:

Configuración del número de


subprocesos Configuración del
tiempo de aceleración
Establecer el número de iteraciones de prueba
El panel de control del grupo de subprocesos se ve así:
El panel de grupo de subprocesos contiene los siguientes componentes:

Acción a tomar después de un error del muestreador− En caso de que ocurra algún
error durante la ejecución de la prueba, puede dejar que la prueba −

Continuaral siguiente elemento en la prueba

Detener hilopara detener el hilo actual.

Detener pruebacompletamente, en caso de que desee inspeccionar el error antes


de que continúe ejecutándose.

Número de hilos− Simula el número de usuarios o conexiones a su


aplicación de servidor.

Período de despliegueDefine cuánto tiempo le tomará a JMeter ejecutar todos los subprocesos.

Recuento de bucles− Define el número de veces para ejecutar la prueba.

casilla de verificación del programador− Una vez seleccionado, aparece la sección


Configuración del programador en la parte inferior del panel de control.

Configuración del programador− Puede configurar la hora de inicio y finalización de


la ejecución de la prueba.

Controladores
JMeter tiene dos tipos de controladores: muestreadores y controladores lógicos.

Muestreadores
Los muestreadores permiten que JMeter envíe tipos específicos de solicitudes a un servidor.
Simulan una solicitud de usuario de una página desde el servidor de destino. Por ejemplo, puede
agregar una muestra de solicitud HTTP si necesita realizar una POST, GET o DELETE en un servicio
HTTP.

Algunas muestras útiles son

− Solicitud HTTP
Petición FTP
JDBCSolicitar
Java Solicitar
JABÓN/
XMLSolicitudesSolicit
udes RPC

La siguiente captura de pantalla muestra un panel de control de muestra de solicitud HTTP:


Controladores lógicos
Los controladores lógicos le permiten controlar el orden de procesamiento de los muestreadores en
un subproceso. Los controladores lógicos pueden cambiar el orden de una solicitud proveniente de
cualquiera de sus elementos secundarios. Algunos ejemplos son: controlador ForEach, controlador
While, controlador de bucle, controlador IF, controlador de tiempo de ejecución, controlador de
intercalado, controlador de rendimiento y controlador Run Once.

La siguiente captura de pantalla muestra un panel de control del controlador de lazo:

La siguiente lista consta de todos los controladores lógicos que

proporciona JMeter: controlador simple


Controlador de bucle
Controlador de una
sola vez Controlador
intercalado
Controlador
aleatorio
Controlador de orden
aleatorio Controlador de
rendimiento Controlador
de tiempo de ejecución
Si el controlador
Mientras que el
controlador
cambia el
controlador
Controlador ForEach
Módulo Controlador
Incluir Controlador
Controlador de
transacciones
Controlador de
grabación

Fragmentos de prueba
Un Fragmento de prueba es un tipo especial de elemento colocado en el mismo nivel que el
elemento Grupo de subprocesos. Se distingue de un grupo de subprocesos en que no se ejecuta a
menos que esté referenciado por un controlador de módulo o un controlador de inclusión. Este
elemento es puramente para la reutilización de código dentro de los planes de prueba.

Oyentes
Los Listeners le permiten ver los resultados de Samplers en forma de tablas, gráficos, árboles o texto
simple en algunos archivos de registro. Proporcionan acceso visual a los datos recopilados por JMeter
sobre los casos de prueba a medida que se ejecuta un componente Sampler de JMeter.

Los oyentes se pueden agregar en cualquier parte de la prueba, incluso directamente bajo el
plan de prueba. Recopilarán datos solo de elementos en o por debajo de su nivel. La siguiente
lista consta de todos los oyentes que proporciona JMeter:

Resultado de muestra Guardar


gráfico de configuración
Resultados completos
Gráfico
Resultados Spline
Visualizador
Aserción
Resultados Ver
resultados Árbol
Informe agregado
Ver resultados en tabla
Simple Data Writer
Supervisar resultados
Gráfico de distribución
alfa Gráfico agregado
Mailer Visualizer
BeanShell Listener
Informe de resumen
Temporizadores
De forma predeterminada, un subproceso de JMeter envía solicitudes sin pausas entre cada
muestra. Puede que esto no sea lo que quieres. Puede agregar un elemento de temporizador que
le permita definir un período de espera entre cada solicitud.

La siguiente lista muestra todos los temporizadores que proporciona

JMeter − Constant Timer


Temporizador aleatorio
gaussiano Temporizador
aleatorio uniforme
Temporizador de
rendimiento constante
Temporizador de
sincronización JSR223Timmi
Hora BeanShell
Hora BSF
Tiempo aleatorio de veneno

La siguiente captura de pantalla muestra un panel de control de temporizador constante:

afirmaciones
Las aserciones le permiten incluir alguna prueba de validación sobre la respuesta de su solicitud
realizada utilizando un Sampler. Usando aserciones, puede probar que su aplicación está
devolviendo los datos correctos. JMeter resalta cuando falla una aserción.

La siguiente lista consta de todas las afirmaciones que

proporciona JMeter − Beanshell Assertion


Aserción BSF
Comparar aserción
JSR223afirmaciónn
Respuesta Aserción
Duración Aserción
Tamaño Aserción
Aserción XML
Aserción BeanShell
Aserción MD5Hex
Aserción HTML
Aserción XPath
Aserción de esquema XML
La siguiente captura de pantalla muestra un panel de control de aserción de respuesta:

Elementos de configuración
Los elementos de configuración le permiten crear valores predeterminados y variables para que
los utilicen los muestreadores. Se utilizan para agregar o modificar solicitudes realizadas por
Samplers.

Se ejecutan al inicio del ámbito del que forman parte, antes que cualquier Sampler que se
encuentre en el mismo ámbito. Por lo tanto, solo se accede a un elemento de configuración
desde el interior de la sucursal donde se encuentra.

La siguiente lista consta de todos los elementos de configuración que proporciona

JMeter − Contador
Configuración de
conjunto de datos
CSV Valores
predeterminados de
solicitud de FTP
Administrador de autorización
HTTP Administrador de caché
HTTP
Administrador de
cookies HTTP Servidor
proxy HTTP Valores
predeterminados de
solicitud HTTP
Administrador de
encabezado HTTP
Valores
predeterminados de
solicitud Java
Configuración de
almacén de claves
JDBCElemento de configuración de
inicio de sesión de configuración
de conexión
Valores predeterminados de solicitud LDAP
Configuración de muestra de TCP
predeterminada de solicitud
extendida de LDAP
Variables definidas por
el usuario Elemento de
configuración simple
Variable aleatoria
Elementos del preprocesador
Un elemento de preprocesador es algo que se ejecuta justo antes de que se ejecute una muestra. A
menudo se usan para modificar la configuración de una solicitud de muestra justo antes de que se
ejecute, o para actualizar variables que no se extraen del texto de respuesta.

La siguiente lista consta de todos los elementos de preprocesador que proporciona

JMeter − HTML Link Parser


Modificador de reescritura de URL
HTTP Modificador de parámetros
de usuario HTTP Parámetros de
usuario
JDBCPreprocesador JSR223
Preprocesador RegEx
Parámetros de usuario
BeanShell Preprocesador
BSF Preprocesador

Elementos de posprocesador
Un posprocesador se ejecuta después de que un muestreador termina su ejecución. Este elemento
se usa con mayor frecuencia para procesar los datos de respuesta, por ejemplo, para recuperar un
valor particular para su uso posterior.

La siguiente lista consta de todos los elementos de posprocesador que proporciona

JMeter − Extractor de expresiones regulares


Extractor de XPath
Controlador de acción de estado
de resultado JSR223PostProcesor
JDBCPostprocesador BSF
Postprocesador
CSS/JQuery Extractor
Postprocesador BeanShell
Postprocesador de
depuración

Orden de ejecución de los elementos de prueba


A continuación se muestra el orden de ejecución de los elementos del

plan de prueba − Elementos de configuración


Muestreador
de
temporizadore
s de
preprocesador
es
Post-procesadoresa menos que el
resultado de la muestra sea
nuloAfirmaciones a menos que
SampleResultisnull Oyentes a menos
queSampleResultisnull

JMETER - PLAN DE PRUEBA WEB


Construyamos un plan de prueba simple que pruebe una página web. Escribimos un plan de
prueba en Apache JMeter para que podamos probar el rendimiento de la página web que
muestra la URL:
http://www.tutorialspoint.com/.

Iniciar JMeter
Abra la ventana de JMeter haciendo clic en /home/manisha/apache-jmeter-2.9/bin/jmeter.sh. La
ventana de JMeter aparece como se muestra a continuación:

Cambiar el nombre del plan de prueba


Cambie el nombre del nodo del plan de prueba a Prueba de muestra en el cuadro de texto Nombre.
Debe cambiar el enfoque al nodo del banco de trabajo y volver al nodo Plan de prueba para ver el
nombre reflejado.

Añadir hiloGrupo
Ahora agregamos nuestro primer elemento en la ventana. Agregamos un Grupo de subprocesos, que
es un marcador de posición para todos los demás elementos, como Samplers, Controllers y
Listeners. Necesitamos uno para que podamos configurar el número de usuarios para simular.

En JMeter, todos los elementos del nodo se agregan mediante el menú contextual.

Haga clic con el botón derecho en el elemento donde desea agregar un

nodo de elemento secundario. Elija la opción adecuada para agregar.


Haga clic con el botón derecho en Prueba de muestra ourTestPlan > Agregar > Usuarios de
subprocesos > Grupo de subprocesos. Por lo tanto, el grupo de subprocesos se agrega en el nodo
Test Plan SampleTest.

Nombre el grupo de subprocesos como usuarios. Para nosotros, este elemento significa usuarios
que visitan la página de inicio de TutorialsPoint.

Añadir muestra
Necesitamos agregar una muestra en nuestros usuarios del grupo de subprocesos. Como se hizo
anteriormente para agregar el grupo de subprocesos, esta vez abriremos el menú contextual del
nodo Usuarios del grupo de subprocesos haciendo clic con el botón derecho y agregaremos la
muestra de solicitud HTTP eligiendo Agregar > Muestra > opción de solicitud HTTP.
Agregará una muestra de solicitud HTTP vacía en el nodo Usuarios del grupo de subprocesos.
Configuremos este elemento de nodo:

Nombre− Cambiaremos el nombre para reflejar la acción que queremos lograr. Lo


nombraremos como Visite la página de inicio de TutorialsPoint

Nombre del servidor o IP− Aquí, tenemos que escribir el nombre del servidor web.
En nuestro caso es
www.tutorialspoint.com.http: / /partenoestáescritoestosoloelnombredelservidorosuProtocoloIP

− Dejaremos esto en blanco, lo que significa que queremos HTTP como protocolo. Ruta:

escribiremos ruta como/ barra oblicua. Significa que queremos la página raíz del servidor.

Añadir oyente
Ahora añadiremos un oyente. Agreguemos View Results Tree Listener debajo del nodo Thread
Group User. Garantizará que los resultados de Sampler estarán disponibles para su visualización en
este elemento de nodo Listener.

Para agregar un oyente −

Abre el menú contextual


Haga clic con el botón derecho en Usuarios del grupo de subprocesos
Elija la opción Agregar > Oyente > Ver árbol de resultados
Ejecutar el plan de prueba
Ahora con toda la configuración, ejecutemos el plan de prueba. Con la configuración de Thread
Group Users, mantenemos todos los valores predeterminados. Significa que JMeter ejecutará la
muestra solo una vez. Es similar a un solo usuario, solo una vez.

Esto es similar a un usuario que visita una página web a través del navegador, con JMeter sampler.
Para ejecutar el plan de prueba, seleccione Ejecutar en el menú y seleccione la opción Iniciar.

Apache JMeter nos pide que guardemos el plan de prueba en un archivo de disco antes de comenzar
la prueba. Esto es importante si desea ejecutar el plan de prueba varias veces. También puede optar
por ejecutarlo sin guardar.

Ver la salida
Hemos mantenido la configuración del grupo de subprocesos como un solo subproceso oneuseronly y
loop por 1 vez
ejecutar solo una vez, por lo tanto, obtendremos el resultado de una sola transacción en View Result Tree
Listener.
Los detalles del resultado anterior son −

El color verde contra el nombre Visite la página de inicio de TutorialsPoint indica éxito.

JMeter ha almacenado todos los encabezados y las respuestas enviadas por el servidor
web y está listo para mostrarnos el resultado de muchas maneras.

La primera pestaña es Resultados de la muestra. Muestra los datos de JMeter, así como
los datos devueltos por el servidor web.

La segunda pestaña es Solicitud, que muestra todos los datos enviados al servidor web como
parte de la solicitud.

La última pestaña es Datos de respuesta. En esta pestaña, el oyente muestra los datos recibidos del
servidor en formato de texto.

estesisjust asencillomipruebastplanortecualhejecutarssoloyenmisolicitud.ButJMetro'sreayofuerzahisin
enviar la misma solicitud, como si muchos usuarios la estuvieran enviando. Para probar los
servidores web con múltiples usuarios, necesitamos cambiar la configuración de Usuarios del
grupo de subprocesos.
JMETER - PLAN DE PRUEBA DE
LA BASE DE DATOS
En este capítulo, veremos cómo crear un plan de prueba simple para probar el servidor de la base
de datos. Para nuestro propósito de prueba, usamos el servidor de base de datos MYSQL. Puede usar
cualquier otra base de datos para realizar pruebas. Para la instalación y creación de tablas en
MYSQL, consulteTutorial de MySQL.

Una vez que MYSQL esté instalado, siga los pasos a continuación para

configurar la base de datos − Cree una base de datos con el nombre

"tutorial".

Crea una tabla tutorials_tbl.

Inserte registros en tutorials_tbl como se muestra a continuación:


mysql>usarTUTORIALES;

Base de datoscambió

mysql>INSERTAR EN tutoriales_tbl
->(título_tutorial,tutorial_autor,día de entrega)
->VALORES
->("Aprende PHP","Juan

Poul",AHORA());ConsultaOK,1fila

afectada(0.01segundo)

mysql>INSERTAR EN tutoriales_tbl
->(título_tutorial,tutorial_autor,día de entrega)
->VALORES
->("Aprende MySQL","Abdul S",AHORA());

ConsultaOK,1fila

afectada(0.01segundo)mysql>INSERTAR EN

tutoriales_tbl
->(título_tutorial,tutorial_autor,día de entrega)
->VALORES
->("Tutorial JAVA","Sanjay",'2007-05-06');

ConsultaOK,1fila

afectada(0.01segundo)mysql>

PolicíayelmiapropiadomiJDBCcontrolador a /home/manisha/apache-jmeter-2.9/lib.

Crear plan de prueba de JMeter


Comencemos el JMeter desde /home/manisha/apache-jmeter-2.9/bin/jmeter.sh.

Agregar usuarios
Para crear un grupo de

subprocesos, haga clic

con el botón derecho en

Plan de prueba.
Seleccione Agregar > Usuarios de subprocesos > Grupo de subprocesos.
Por lo tanto, el grupo de subprocesos se agrega en el nodo Plan
de prueba. RebautizarestesamenazadgrupopagsasJDBCUsuarios.
No cambiaremos las propiedades predeterminadas del Grupo de subprocesos.

Adición de solicitudes JDBC


Ahora que definimos a nuestros usuarios, es hora de definir las tareas que realizarán. En esta
sección,específicoyelmiJDBCsolicitudes a realizar.

clic derechokonorteelmiJDBCElemento de usuarios.

Seleccione Agregar > Elemento de configuración > Configuración de

conexión JDBC. Configure los siguientes campos usando la base de

datos MySQL llamada tutorial:

Nombre de variable vinculado al grupo. Esto necesita identificar la configuración de


forma única. Esta usadobyelmiJDBCMuestreador para identificar la configuración a utilizar. Lo
hemos nombrado como prueba.

bases de datosmiURL

−jdbc:mysql://localhost:3306/tutorial. Clase de controlador

JDBC: com.mysql.jdbc.Driver.

Nombre de usuario: raíz.

Contraseña: contraseña para root.

Los otros campos en la pantalla se dejan por defecto como se muestra a continuación:

Nowanunciod aJDBCSolicitud que hace referencia al grupo de configuración de JDBC definido anteriormente.
Seleccione el elemento Usuarios de JDBC.

Haga clic con el botón derecho del mouse para


obtener el menú Agregar. Seleccione Agregar >

Muestreador > Solicitud JDBC.


Seleccione este nuevo elemento para ver su Panel

de control. Edite las propiedades como se muestra a

continuación:

Nombre de variable vinculado al grupo. Esto necesita identificar de forma única la


configuración. Esta usadobyelmiJDBCMuestreador para identificar la configuración a utilizar.
Lo nombré como prueba.

Nombre − Aprender.

Ingrese el nombre del grupo: pruebe lo mismo que en el

elemento de configuración. Tipo de consulta: declaración de

selección.

Ingrese el campo Cadena de consulta SQL.

Crear oyente
Nowanunciodelmiescucharelemento. Este elemento es responsable de almacenar todos los resultados de sus
solicitudes JDBC en un archivo y presentar un modelo visual de los datos.

SeleccionartelmiJDBCElemento de usuarios

Agregue un agente de escucha Ver árbol de resultados (Agregar > Agente de escucha > Ver
árbol de resultados).
Guardar y ejecutar el plan de prueba
Ahora guarde el plan de prueba anterior como db_test.jmx. Ejecute este plan de prueba usando la
opción Ejecutar > Iniciar.

Verificar la salida

En la última imagen, puede ver que se seleccionan dos registros.


JMETER - PLAN DE PRUEBA FTP
En este capítulo, veremos cómo probar un sitio FTP usando JMeter. Vamos a crear un plan de
prueba para probar el sitio FTP.

Cambiar el nombre del plan de prueba


Aire librenorteelmiJMeterventana haciendo clic en
/home/manisha/apache-jmeter-2.9/bin/jmeter.sh Haga clic en el nodo Plan de prueba.
Cambie el nombre de este nodo del plan de prueba a TestFTPSite.

Añadir hiloGrupo
Agregue un Grupo de subprocesos, que es un marcador de posición para todos los demás elementos,
como Samplers, Controllers y Listeners.

Haga clic derecho en TestFTPSite ourTestPlan


Seleccione Agregar > Usuarios de subprocesos > Grupo de subprocesos. El grupo de subprocesos
se agregará en el plan de prueba
TestFTPSitenodo.
Modifique las propiedades predeterminadas del Grupo de subprocesos para que se adapten a
nuestras pruebas de la siguiente manera:

Nombre− Usuarios FTP

Número de usuarios de subprocesos− 4

Período de despliegue− deje el valor predeterminado de 0 segundos.

Recuento de bucles− 1

Agregar muestra - Solicitud de FTP


Ahora que hemos definido a nuestros usuarios, es hora de definir las tareas que realizarán. Agregue
elementos de solicitud de FTP. Agregamos dos elementos de solicitud FTP, uno que recupera un
archivo y el otro que coloca un archivo en el sitio ftp.

Seleccione el elemento FTPusers.


Haga clic con el botón derecho del mouse para
obtener el menú Agregar. Seleccione Agregar >
Muestreador > Solicitud de FTP.
Seleccione el elemento Solicitud de FTP en el
árbol. Edite las siguientes propiedades como se

muestra a continuación:

Los siguientes detalles se ingresan en este elemento:

Nombre− Obtener solicitud de FTP

Nombre del servidoro IP− 184.168.74.29

remotomiFilmi −/home/manisha/muestra_ftp.txt

Archivo local−

muestra_ftp.txt Seleccione

getRETR

Nombre de usuario− manisha

Clave− manisha123

Ahora agregue otra solicitud de FTP como se indica arriba y edite las propiedades como se
muestra en la siguiente captura de pantalla:
Los siguientes detalles se ingresan en este elemento:
Nombre− Colocación de solicitud FTP

Nombre del servidoro IP− 184.168.74.29

remotomiFilmi −/home/manisha/examplefile.txt

Archivo local − /home/manisha/work/examplefile.txt

Seleccione putSTOR

Nombre de usuario− manisha

Clave− manisha123

Añadir oyente
El elemento final que debe agregar a su plan de prueba es un oyente. Este elemento es responsable
de almacenar todos los resultados de sus solicitudes de FTP en un archivo y presentar un modelo
visual de los datos.

Seleccione el elemento FTPusers.


Agregue un agente de escucha Ver árbol de resultados seleccionando Agregar > Agente de
escucha > Ver árbol de resultados.

Ejecutar el plan de prueba


Ahora guarde el plan de prueba anterior como ftpsite_test.jmx. Ejecute este plan de prueba usando
la opción Ejecutar > Iniciar.

Ver la salida
El siguiente resultado se puede ver en el oyente.
Puede ver que se realizan cuatro solicitudes para cada solicitud de FTP y la prueba es exitosa. El
archivo recuperado para la solicitud GET se almacena en la carpeta /bin. En nuestro caso, es
/home/manisha/apache-jmeter-2.9/bin/. Para la solicitud PUT, el archivo se carga en la ruta
/home/manisha/.

JMETER - PLAN DE PRUEBA DEL


SERVICIO WEB
En este capítulo, aprenderemos cómo crear un plan de prueba para probar un servicio web. Para
nuestro propósito de prueba, creamos un proyecto de servicio web simple y lo implementamos en el
servidor Tomcat localmente.

Crear proyecto de servicio web


Para crear un proyecto de servicio web, hemos utilizado Eclipse IDE. Primero escriba la
interfaz de punto final de servicio HelloWorld en el paquete com.tutorialspoint.ws. El
contenido de HelloWorld.java es el siguiente:
paquetecom.punto de tutoriales.ws;

importarjavax.jws.WebMethod;impo
rtarjavax.jws.Servicio
web;importarjavax.jws.jabón.Enlace
SOAP;
importarjavax.jws.jabón.Enlace SOAP.Estilo;

//Interfaz de punto final de


servicio@ Servicio web
@

SOAPBinding(estilo=Estilo.RPC)inte

rfaz públicaHola Mundo{

@ WebMethodCuerdagetHelloWorldMessage(Cuerdacuerda);

Este servicio tiene un método getHelloWorldMessage que toma un parámetro String. A

continuación, cree la clase de implementación HelloWorldImpl.java en el paquete


com.tutorialspoint.ws.

paquetecom.punto de

tutoriales.ws;importarjavax.jws.Se

rvicio web;

@ Servicio web(interfaz de punto


final="com.tutorialspoint.ws.HelloWorld")clase
públicaHolaMundoImplimplementosHola Mundo{
@ anular

públicoCuerdagetHelloWorldMessage(Cuerdami nombre)
{devolver("Hola "+mi nombre+"al mundo JAX WS");
}
}
Ahora publiquemos este servicio web localmente creando el publicador de Endpoint y exponiendo el
servicio en el servidor.

El método de publicación toma dos parámetros:

cadena de URL de punto final.

Objeto implementador, en este caso la clase de implementación HelloWorld, que se expone


como un servicio web en el extremo identificado por la URL mencionada en el parámetro
anterior.

El contenido de HelloWorldPublisher.java es el siguiente:


paquetecom.punto de tutoriales.punto

final;importarjavax.xml.ws.punto

final;

importarcom.punto de

tutoriales.ws.HolaMundoImpl;clase

públicaHolaMundoEditor{

vacío estático públicoprincipal(Cuerda[]argumentos){punto


final.publicar("http://localhost:9000/ws/hola",nuevoHolaMundoImpl());
}
}

Modifique el contenido web.xml como se muestra a continuación:

<?versión xml="1.0"codificación="UTF-8"?>
<!DOCTYPE aplicación web PÚBLICO "-//Sun Microsystems, Inc.//Aplicación web DTD
2.3//EN" "http://java.sun.com/j2ee/dtds/web-app_2_3.dtd">

<aplicación web>

<oyente>
<clase-oyente>com.sun.xml.ws.transport.http.servlet.WSServletContextListener
</clase-de-oyente>
</oyente>

<servlet>
<nombre-servlet>Hola</nombre-servlet>
<clase-
servlet>com.sun.xml.ws.transport.http.servlet.WSServlet
</clase-servlet>
<cargar al iniciar>1</load-on-startup>
</servlet>

<mapeo-servlet>
<nombre-servlet>Hola</nombre-servlet>
<patrón-url>/Hola</url-patrón>
</servlet-mapping>

<sesión-config>
<tiempo de espera de sesión>120</sesión-tiempo de espera>
</session-config>

</aplicación web>

Para implementar esta aplicación como un servicio web, necesitaríamos otro archivo de configuración
sun-jaxws.xml. El contenido de este archivo es el siguiente:

<?versión xml="1.0"codificación="UTF-8"?>
<puntos finalesxmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime"versión="2.0">

<punto finalnombre="Hola
Mundo"implementación="com.tutorialspoint.ws.HelloWorldImpl"patrón de URL="/Hola"/>

</puntos finales>

Ahora que todos los archivos están listos, la estructura del directorio se vería como se muestra en la
siguiente captura de pantalla:
Ahora cree un archivo WAR de esta aplicación.

Elija el proyecto> haga clic con el botón derecho> Exportar> archivo WAR.

Guarde esto como archivo hello.war en la carpeta webapps del servidor

Tomcat. Ahora inicie el servidor Tomcat.

Una vez que se inicia el servidor, debería poder acceder al servicio web con la URL −
http://localhost:8080/hello/hello

Crear plan de prueba JMeter


Ahora vamos a crear un plan de prueba para probar el servicio web anterior.

Cambiar el nombre del plan de prueba


Aire librenorteelmiJMeterventana haciendo clic en
/home/manisha/apache-jmeter2.9/bin/jmeter.sh. Haga clic en el nodo Plan de prueba.
Cambie el nombre de este nodo del plan de prueba como WebserviceTest.

Añadir hiloGrupo
Agregue un Grupo de subprocesos, que es un marcador de posición para todos los demás elementos,
como Samplers, Controllers y Listeners.

Haga clic con el botón derecho en WebserviceTest ourTestPlan > Add > Threads Users >
Thread Group. El grupo de subprocesos se agregará en el nodo Test Plan WebserviceTest.

A continuación, modifiquemos las propiedades predeterminadas del Grupo de subprocesos para


que se adapten a nuestras pruebas. Siguiendo
se cambian las propiedades -

Nombre− usuario del servicio web

Número de usuarios de subprocesos− 2

Período de despliegue− deje el valor predeterminado de 0 segundos.

Recuento de bucles− 2

Añadir muestra - Solicitud SOAP/XML-RPC


Ahora que hemos definido a los usuarios, es hora de definir las tareas que realizarán.

NosotrosvoluntadyoanunciodSOAP/XML-RPCSolicitar elemento −

Haga clic con el botón derecho del mouse para


obtener el menú Agregar. SeleccioneAnunciod
>Muestreador > Solicitud SOAP/XML-RPC.
SeleccionartelmiSOAP/XML-RPCSolicitar elemento en el
árbol Edite las siguientes propiedades como en la imagen de
abajo − Los siguientes detalles se ingresan en este elemento

Nombre − Solicitud SOAP/XML-RPC

URL −http://localhost:8080/hola/hola?wsdl

Datos Soap/XML-RPC− Ingrese los siguientes contenidos


<soapenv:Sobrexmlns:soapenv="http://schemas.xmlsoap.org/soap/
envelope/"xmlns:web="http://ws.tutorialspoint.com/">

<soapenv:Encabezado/>

<soapenv:Cuerpo>

<web:getHelloWorldMessage>
<arg0>manisha</arg0>
</web:getHelloWorldMessage>

</soapenv:Cuerpo>

</soapenv:Sobre>
Añadir oyente
El elemento final que debe agregar a su plan de prueba es un oyente. Este elemento es responsable
de almacenar todos los resultados de sus solicitudes HTTP en un archivo y presentar un modelo visual
de los datos.

Seleccione el elemento de usuario del servicio web.

Agregue un agente de escucha Ver árbol de resultados seleccionando Agregar > Agente de
escucha > Ver árbol de resultados.

Ejecutar el plan de prueba


Ahora guarde el plan de prueba anterior como test_webservice.jmx. Ejecute este plan de
prueba usando la opción Ejecutar > Iniciar.

Ver la salida
El siguiente resultado se puede ver en el oyente.
En la última imagen, puedes ver el mensaje de respuesta "Hello Manisha to JAX WS world".

JMETER -JM STESTPLA norte


yonorteestescapítulo,wmivoluntadyoaprendernorteHowtoescriturami
asencillomipruebastplanortetopruebastjavaaMensajeríagramoServiciomiJMS.JMS admite dos tipos de
mensajes:

Mensajería punto a punto− La mensajería en cola generalmente se usa para


transacciones en las que el remitente espera una respuesta. Los sistemas de mensajería
son bastante diferentes del HTTP normal
peticiones. En HTTP, un solo usuario envía una solicitud y obtiene una respuesta.

TopíCmensajeng −Los mensajes de tema se conocen comúnmente como mensajes de


publicación/suscripción. La mensajería temática generalmente se usa en los casos en que un productor
publica un mensaje y lo consumen varios suscriptores.

Lettussemi apruebastejemplomipararcada uno de estos. Los requisitos previos para probar JMS son:

Wmia nosotrosmiApachemiActivoMqinorteelmiejemplo.El rmiArkansasmivariossJMSservidorsme


gustamiBIMETROWebEsferamiMQ anteriormente MQSeries, Tibco, etc. Descárgalo delos binarios de
Apache ActiveMQ sitio web.

Descomprima el archivo, vaya al directorio descomprimido y ejecute el siguiente comando


desde la consola de comandos para iniciar el servidor ActiveMQ:

.\bin\activemqcomienzo

Puede verificar si el servidor ActiveMQ se ha iniciado visitando la interfaz de administración en la


siguiente dirección http://localhost:8161/admin/. Si solicita autenticación, ingrese el ID de usuario
y la contraseña como administrador. La pantalla es similar a la que se muestra a continuación:

Ahora copie activemq-all-xxxjar XXX según la versión del directorio descomprimido de ActiveMQ
a /home/manisha/apache-jmeter-2.9/lib.

Con la configuración anterior, construyamos el plan de

prueba para:JMSpunto a puntotpruebatPlánorte

JMSTopíCpruebatPlánorte

JMETER - PLAN DE PRUEBA DEL


MONITOR
En este capítulo, discutiremos cómo crear un plan de prueba usando JMeter para monitorear
servidores web. Los usos de las pruebas de monitor son los siguientes:

Los monitores son útiles para pruebas de estrés y gestión del sistema.

Utilizado con pruebas de estrés, el monitor proporciona información adicional sobre el


rendimiento del servidor.

Los monitores facilitan ver la relación entre el rendimiento del servidor y el tiempo de
respuesta en el lado del cliente.

Como herramienta de administración del sistema, el monitor proporciona una manera fácil
de monitorear múltiples servidores desde una consola.

Necesitamos Tomcat 5 o superior para el monitoreo. Para nuestro propósito de prueba,


monitorearemos el servidor Tomcat 7.0.42. Puede probar cualquier contenedor de servlet que
admita Java Management Extension JMX. Escribamos un caso de prueba para monitorear el
servidor Tomcat. Primero configuremos nuestro servidor tomcat.
Configurar servidor Tomcat
Comenzamos con la apertura del estado del servicio Tomcat. Para hacer esto, edite el archivo de
configuración para los usuarios,
<INICIO_TOMCAT>/conf/tomcat-users.xml. Este archivo contiene una sección de usuarios de
tomcat comentada
como se muestra -
<usuarios-tomcat>

<!--
<rol rolename="tomcat"/>
<rol nombre del rol="rol1"/>
<usuario nombre de usuario="tomcat" contraseña="tomcat" roles="tomcat"/>
<usuario usuario="ambos" contraseña="tomcat" roles="tomcat,rol1"/>
<usuario nombre de usuario="rol1" contraseña="tomcat" roles="rol1"/>
-->

</tomcat-usuarios>
r
Necesitamos cambiar esta sección para agregar los roles de administrador, administrador,
administrador-gui y asignar el uso "administrador". El archivo revisado es el siguiente:

<usuarios-tomcat>

<rolnombre de rol="administrador-GUI"/>
<rolnombre de rol="script de administrador"/>
<rolnombre de rol="gerente-jmx"/>
<rolnombre de rol="estado de administrador"/>
<usuarionombre de usuario="administración"clave="administración"roles="manager-
gui,manager-script,manager-jmx,manager-status"/>

</tomcat-usuarios>

Nowestrellatelmitomcatatenderr<TOMCAT_HOME>/bin/startup.sh para Linux y


<GATO_INICIO>/bin/startup.batpararventanas Una vez iniciado, verifique que la supervisión de Tomcat
funcione ingresando el siguiente enlace en su navegador:

http://localhost:8080/administrador/estado?XML=verdadero

Aparece una ventana de autenticación en el navegador. Ingrese el nombre de usuario y la


contraseña de Tomcat asociados
ennuestracaseitisadmin. Luego, el navegador muestra el estado de ejecución de Tomcat como se
muestra a continuación:

De la captura de pantalla anterior, podemos notar algunas cosas:


Tomcat necesario para el funcionamiento de JMeter.

También tenga en cuenta que hay dos conectores predeterminados. El conector AJP que se
usa en general junto con el módulo frontal mod_jk Apache HTTPD y el conector HTTP que se
usa comúnmente para el acceso directo a Tomcat a través del puerto 8080.

Escribir plan de prueba de JMeter


Supervisemos el servidor Tomcat escribiendo un plan de
prueba:

Cambiar el nombre del plan de prueba


Aire librenorteelmiJMeterventana haciendo clic en
/home/manisha/apache-jmeter2.9/bin/jmeter.sh. Haga clic en el nodo Plan de prueba.
Agregue un grupo de subprocesos como se explica en el siguiente paso.

Añadir hiloGrupo
Haga clic con el botón derecho en Plan de prueba > Agregar > Usuarios de subprocesos >
Grupo de subprocesos. El grupo de subprocesos se agregará en el nodo Plan de prueba.

Cambie el recuento de bucles a siempre oa un número grande para que se generen suficientes
muestras.

Administrador de autorización HTTP


Agregue el Administrador de autorización HTTP al elemento Grupo de subprocesos
seleccionando Agregar > Elemento de configuración > Administrador de autorización HTTP.
Este elemento gestiona la autenticación solicitada por el navegador para ver el estado del
servidor Tomcat.

Seleccione el Administrador de

autorización HTTP. Edite los siguientes

detalles:

Nombre de usuario− admin dependiendo de la configuración en

tomcat − usuarios. Contraseña del archivo xml − admin

dependiendo de la configuración en los usuarios de Tomcat. xmlfile

Los demás campos se dejan vacíos.


Añadir solicitud Sampler-HTTP
Ahora que hemos definido a nuestros usuarios, es hora de definir las tareas que realizarán.
Agregamos el elemento de solicitud HTTP.

Haga clic con el botón derecho del mouse para


obtener el menú Agregar. Seleccione Agregar >
Muestreador > Solicitud HTTP.
Luego, seleccione el elemento Solicitud HTTP en el
árbol. Edite las siguientes propiedades como en la
imagen a continuación − Los siguientes detalles se
ingresan en este elemento −

Nombre− Estado del servidor

Nombre del servidor o IP− servidor local

Puerto− 8080

Palmaditah −/gerente/estado

Parámetros− Agregar un parámetro de solicitud denominado "XML" en


mayúsculas. Dale un valor de "verdadero" en minúsculas.

Tareas opcionales− Marque "Usar como monitor" en la parte inferior del muestreador.
Agregar un temporizador constante
Para solicitar el estado del servidor periódicamente, agregue un Temporizador constante que
permitirá un intervalo de tiempo entre cada solicitud. Agregue un temporizador a este grupo
de subprocesos seleccionando Agregar > Temporizador > Temporizador constante.

Introduzca 5000 milisegundos en el cuadro Demora de subproceso. En general, el uso de intervalos


de menos de 5 segundos puede agregar estrés a su servidor. Descubra cuál es un intervalo aceptable
antes de implementar el monitor en su entorno de producción.

Añadir oyente
El elemento final que debe agregar a su plan de prueba es un oyente. Añadimos dos tipos de
oyentes. Uno que almacena los resultados en un archivo y el segundo que muestra la vista gráfica
de los resultados.

Seleccione el elemento del grupo de hilos.

Agregue un detector de Escritor de datos simple Agregar > Oyente > Escritor de datos
simple.

Especifique un directorio y un nombre de archivo del archivo de salida en nuestro caso,


itis/home/manisha/work/sample. CSV

Agreguemos otro agente de escucha seleccionando el elemento del plan de prueba


Agregar > Agente de escucha > Resultados del monitor.
Ejecutar el plan de prueba
Ahora guarde el plan de prueba anterior como monitor_test.jmx. Ejecute este plan de prueba usando
la opción Ejecutar > Iniciar.

Ver la salida
Resultadosvoluntadyobmiahorrardinorte/home/manisha/trabajo/
muestra.csvexpediente.yotuCalifornianortetambiénosemi agráficayoresultadotin el detector de resultados
del monitor como en la imagen a continuación.
Tenga en cuenta que el gráfico tiene subtítulos en ambos lados del gráfico. A la izquierda está el
porcentaje ya la derecha está muerto/sano. Si la línea de la memoria sube y baja rápidamente,
podría indicar una paliza de la memoria. En esas situaciones, es una buena idea perfilar la
aplicación con Borland OptimizeIt o JProbe.
Lo que desea ver es un patrón regular para carga, memoria e hilos. Cualquier comportamiento
errático generalmente indica un rendimiento deficiente o algún tipo de error.

JMETER - OYENTES
Los oyentes brindan acceso a la información que recopila JMeter sobre los casos de prueba mientras
se ejecuta JMeter. Los resultados o la información recopilada por los oyentes se pueden mostrar en
forma de:

archivo
de
registro
de
gráficos
de tablas
de árbol

Todos los oyentes escriben los mismos datos sin procesar en el archivo de salida cuando se
especifica uno.

Configuración predeterminada
Los elementos predeterminados que se guardarán se pueden definir de una de las siguientes dos
maneras:

En jmeter.properties ouser. archivo de propiedades. Este archivo está presente en la carpeta /bin
de JMeter. Para cambiar el formato predeterminado, busque la siguiente línea en
jmeter.properties:
jmeter.save.saveservice.output_format=

Al usar la ventana emergente Config como se muestra en la siguiente captura de pantalla:

JMeter crea los resultados de una ejecución de prueba como JMeter Text LogsJTL. Estos
normalmente se denominan archivos JTL, ya que esa es la extensión predeterminada, pero se puede
usar cualquier extensión.
Si se ejecutan varias pruebas con el mismo nombre de archivo de salida, JMeter agrega
automáticamente nuevos datos al final del archivo.

El oyente puede registrar los resultados en un archivo, pero no en la interfaz de usuario. Está
destinado a proporcionar un medio eficiente para registrar datos al eliminar la sobrecarga de la
GUI.

Al correr en −
modo de interfaz gráfica de usuario− usar el oyente Simple Data Writer

modo no GUI− el indicador -l se puede utilizar para crear un archivo de datos.

Los oyentes pueden usar mucha memoria si hay muchas muestras. Para minimizar la cantidad
de memoria necesaria, utilice el formato Simple Data Write con CSV.

Formato de registro CSV


El formato de registro CSV depende de los elementos de datos seleccionados en la configuración.
Solo los elementos de datos especificados se registran en el archivo. El orden de aparición de las
columnas es fijo y es el siguiente:

CampoDescripciónValor Ejemplo

sello de tiempo milisegundos desde el 1/1/1970 1354223881017

transcurrido milisegundos 1858

muestreador de etiquetas etiquetaHTTP


Solicitud

código de respuesta, p. ej. 200, 404 200

mensaje de respuesta p.ejOK OK

subprocesoNombre Grupo de hilos 1-1

tipo de datos p.ejtexto texto

éxitoverdadero ofalso verdadero

errorMensajesi ningún

número de bytes de bytes en la muestra 34908

subprocesos grp número de subprocesos activos en este grupo de subprocesos 1

todos los subprocesos en total número de subprocesos activos en todos los grupos 1

URL

http://tutorialspoint.cometro

Nombre de archivoif Se usó Guardar respuesta en archivo

tiempo de latencia a la primera respuesta 132

codificación utf-8

Número de recuento de muestra de muestras 1


1, a menos que se agreguen múltiples muestras

ErrorCountnumber de errores 0
0 o 1, a menos que se agreguen múltiples muestras

nombre de host donde estaba la muestragenerado

PortátilManishaTiempo de inactividad número de

milisegundos de tiempo de 'inactividad' normalmente 0

Variablessi especificado

Guardar datos de respuesta


Los datos de respuesta se pueden guardar en el archivo de registro XML si es necesario. Sin
embargo, no permite guardar archivos e imágenes de gran tamaño. En tales casos, utilice el
posprocesador Save_Responses_to_a_file. Esto genera un nuevo archivo para cada muestra y guarda
el nombre del archivo con la muestra. El nombre del archivo se puede incluir en la salida del
registro de muestra. Los datos se recuperarán del archivo si es necesario.
cuando se vuelve a cargar el archivo de registro de muestra.

Cargando datos de respuesta de lectura


Para ver un archivo de resultados existente, puede utilizar el botón "Examinar..." para seleccionar
un archivo. Si es necesario, simplemente cree un plan de prueba ficticio con el Listener apropiado
en él.

Guardar los datos de la GUI del oyente


JMeter es capaz de guardar cualquier oyente como un archivo PNG. Para hacerlo,

Seleccione el oyente en el panel izquierdo seleccionando Editar > Guardar como imagen.

Aparece un cuadro de diálogo de archivo. Introduzca el nombre deseado.

Salva al oyente.

JMETER - FUNCIONES
Funciones de JMeter y variables de usuario
Las funciones de JMeter son valores especiales que pueden llenar campos de cualquier Sampler u
otro elemento en un árbol de prueba.

Una llamada de función se ve así:

${__nombreDeFunción(var1,var2,var3)}

_nombre de la funcióncoincide con el nombre de una función. Por ejemplo ${ threadNum}.

Si un parámetro de función contiene una coma, asegúrese de escapar con "\" como se muestra
a continuación:

${__hora(EEE\, d MMM aaaa)}

Las variables se referencian como −

${VARIABLE}

Lista de funciones
La siguiente tabla enumera un grupo de funciones agrupadas libremente en tipos:

Tipo de función Nombre Comentario

Información threadNum Obtener número de hilo.

Información samplerName Consiga la etiqueta con el nombre del


muestreador.
Información máquina IP
Obtenga la dirección IP de la
Información máquina Nombre
máquina local. Obtenga el nombre
Información hora
de la máquina local.
Información iniciar
Devuelve la hora actual en varios formatos.
Información sesión
Registrar o mostrar un mensaje y devolver
Entrada CadenaDesdeArchivo
el valor. Registrar o mostrar un mensaje de
Aporte ArchivoACadena
valor de retorno vacío. Leer una línea de un
Aporte CSVLeer
archivo.

Leer un archivo completo.

Leer desde un archivo delimitado por CSV.


Aporte XPath Use una expresión XPath para leer de un
archivo.
Cálculo encimera Genera un número incremental.

Cálculo sumaint Agregar números enteros.

Cálculo sumalarga Añade números largos.

Cálculo Aleatorio Genera un número aleatorio.

Cálculo cadena aleatoria Genera una cadena aleatoria.

Cálculo UUID Genere un UUID de tipo 4 aleatorio.

secuencias de beanshell Ejecute un script BeanShell.


comandos
secuencias de JavaScript ProcesosJavaScriptMETROozillaRhino.
comandos
secuencias de jexl, jexl2 Evaluar una expresión Commons Jexl.
comandos
Propiedades propiedad Leer una propiedad.

Propiedades PAGS Leer un método abreviado de propiedad.

Propiedades establecer propiedad Establezca una propiedad JMeter.

Variables separar Dividir una cadena en variables.

Variables V Evaluar un nombre de variable.

Variables evaluar Evaluar una expresión variable.

Variables evalVar Evaluar una expresión almacenada en una


variable.
Cuerda función de expresión Analizar la respuesta anterior usando
regular una expresión regular.

Cuerda escapeOroRegexpChars Cita meta caracteres utilizados por la


expresión regular ORO.

Cuerda carbonizarse Genere valores de caracteres Unicode a


partir de una lista de números.

Cuerda no escapar Cadenas de proceso que contienen escapes


de Java
por ejemplo, \n & \t.

Cuerda unescapeHtml Decodificar cadenas codificadas en HTML.

Cuerda escapeHtml Codifique cadenas utilizando la codificación


HTML.
Cuerda TestPlanName Devuelve el nombre del plan de prueba
actual.

Hay dos tipos de funciones:

Variables o valores estáticos definidos por el usuario


Funciones integradas

Los valores estáticos definidos por el usuario le permiten definir las variables que se
reemplazarán con su valor estático cuando se compila y envía un árbol de prueba para su
ejecución.
Las variables no se pueden anidar;es decir
{var
{NORTE}}No funciona.

elmi Vvvariablefunciónnorteversióndespués de2.2 se puede utilizar para hacer esto −{__V(Var {NORTE})}.

Este tipo de reemplazo es posible sin funciones, pero es menos conveniente y menos
intuitivo.

Dónde usar funciones y variables


Las funciones y variables se pueden escribir en cualquier campo de cualquier

componente de prueba. Las siguientes funciones deberían funcionar bien en un

plan de prueba:

intSum
longSum
machineName
BeanShell
javaScript
jexl
tiempo
aleatorio
funciones de
propiedad funciones
de registro

Las funciones que se utilizan en el plan de prueba tienen algunas restricciones. Las variables de
subprocesos de JMeter no se habrán configurado completamente cuando se procesen las funciones,
por lo que los nombres de variables pasados como parámetros no se configurarán y las referencias
de variables no funcionarán. Por lo tanto, split y regex y las funciones de evaluación de variables no
funcionarán. La función threadNum no funcionará y no tiene sentido a nivel de plan de prueba.

Referencia de variables y funciones


La referencia a una variable en un elemento de prueba se realiza colocando entre paréntesis
el nombre de la variable con '${' y'}'.

Las funciones se referencian de la misma manera, pero por convención, los nombres de las
funciones comienzan con " " para evitar conflictos con los nombres de los valores de usuario.

Algunas funciones toman argumentos para configurarlas, y estos van entre paréntesis,
delimitados por comas. Si la función no acepta argumentos, se pueden omitir los paréntesis.
Por ejemplo

${__BeanShell(vars.put("nombre"\,"valor"))}

Alternativamente, puede definir su secuencia de comandos como una variable, por ejemplo,
en el Plan de prueba:
SCRIPTvars.put("nombre","valor")

Se puede hacer referencia al script de la siguiente manera:

${__BeanShell(${SCRIPT})}

El cuadro de diálogo Asistente de función


elmiFunciónnorteayudarEl diálogo está disponible en la pestaña Opciones de JMeter.

Usando el asistente de funciones, puede seleccionar una función del menú desplegable y
asignar valores para sus argumentos. La columna de la izquierda en la tabla proporciona una
breve descripción del argumento, y la columna de la derecha es donde escribe el valor de ese
argumento. Diferentes funciones toman diferentes argumentos.

Una vez que haya hecho esto, haga clic en el botón "Generar" y se generará la
cadena adecuada, que puede copiar y pegar en el plan de prueba donde lo necesite.
Variables predefinidas
Algunas variables están definidas internamente por JMeter. Son −

COOKIE_cookiename − contiene el valor de la cookie.

JMeterThread.último_muestra_ok −si la última muestra estuvo bien o no: verdadero/falso. Nota: esto se
actualiza después de que se hayan ejecutado PostProcessors y Asertions.

Variables de INICIO.

Propiedades predefinidas
Algunas propiedades integradas están definidas por JMeter. Estos se enumeran a continuación. Por
comodidad, las propiedades de INICIO también se copian en variables con los mismos nombres.

START.MS − Hora de inicio de JMeter en


milisegundos. START.YMD: la hora de inicio de
JMeter es aaaaMMdd. START.HMS − Hora de inicio
de JMeter como HHmmss. TESTSTART.MS: hora de
inicio de la prueba en milisegundos.

Tenga en cuenta que las variables START/ Las propiedades representan el tiempo de inicio de JMeter, no
el tiempo de inicio de la prueba. Están destinados principalmente para su uso en nombres de archivos, etc.

JMETER - EXPRESIONES
REGULARES
Las expresiones regulares se utilizan para buscar y manipular texto, según patrones. JMeter
interpreta formas de expresiones regulares o patrones que se utilizan en un plan de prueba de
JMeter, al incluir el software de coincidencia de patronesApache Yakarta ORO.

Con el uso de expresiones regulares, sin duda podemos ahorrar mucho tiempo y lograr una mayor
flexibilidad a medida que creamos o mejoramos un plan de prueba. Las expresiones regulares
proporcionan un método simple para obtener información de las páginas cuando es imposible o
muy difícil predecir un resultado.

Un ejemplo de uso estándar del uso de expresiones es obtener un ID de sesión de la


respuesta del servidor. Si el servidor devuelve una clave de sesión única, podemos
obtenerla fácilmente usando expresiones en nuestro script de carga.

Para usar expresiones regulares en su plan de prueba, debe usar el Extractor de expresiones
regulares de JMeter. Puede colocar expresiones regulares en cualquier componente de un plan de
prueba.

Estávale la pena enfatizar la diferencia entre contiene y coincide, como se usa en el elemento
de prueba de aserción de respuesta:

contienesignifica que la expresión regular coincidió con al menos una parte del objetivo, por
lo que 'alfabeto' "contiene" 'ph.b.' porque la expresión regular coincide con la subcadena
'phabe'.

partidossignifica que la expresión regular coincidió con todo el objetivo. Por lo tanto, el
'alfabeto' se "coincide" con 'al.*t'.

Supongamos que desea hacer coincidir la siguiente parte de una página web:
nombre="archivo" valor="readme.txt"

Y desea extraer readme.txt. Una expresión regular adecuada sería:

nombre="archivo" valor="(.+?)">
Los caracteres especiales de arriba son −
(y ) - estos encierran la parte de la cadena de coincidencia que se devolverá

.− coincidir con cualquier carácter

+− una o más veces

?− parar cuando el primer partido tenga éxito

Crear plan de prueba de JMeter


Comprendamos el uso de expresiones regulares en el extractor de expresiones regulares, un
elemento de posprocesador, escribiendo un plan de prueba. Este elemento extrae texto de la
página actual mediante una expresión regular para identificar el patrón de texto con el que se
ajusta el elemento deseado.

Primero escribimos una página HTML con una lista de personas y sus ID de correo electrónico. Lo
desplegamos en nuestro servidor tomcat. El contenido del índice html. html son los siguientes:
<html>
<cabeza>
</cabeza>

<cuerpo>

<tablaestilo="borde:1pxsólido#000000;">

<thestilo="borde:1pxsólido#000000;">IDENTIFICACIÓN</th>
<thestilo="borde:1pxsólido#000000;">nombre</th>
<thestilo="borde:1pxsólido#000000;">Correo electrónico</th>

<tr>
<td>3</td>
<td>manisha</td>
<td>[email protected]</td>
</tr>

<tr>
<td>4</td>
<td>José</td>
<td>[email protected]</td>
</tr>

</tabla>

</cuerpo>

</html>

Al implementarlo en el servidor tomcat, esta página se vería como se muestra en la siguiente


captura de pantalla:
En nuestro plan de prueba, seleccionaremos a la persona en la primera fila de la tabla de personas
que se ve en la página de lista de personas anterior. Para capturar el ID de esta persona, primero
determinemos el patrón donde encontraremos a la persona en la segunda fila.

Como se puede ver en la siguiente instantánea, el ID de la segunda persona está rodeado por <td>
y
</td>,unditiselmisegundodRowoFesoateniendogramoestespatrón.WmiCalifornianortea
nosotrosmiestestomatehelmiexactot patrón del que queremos extraer información. Como queremos extraer dos
piezas de información de esta página, la identificación de la persona y el nombre de la persona, los campos se
definen de la siguiente manera:

Inicie JMeter, agregue un grupo de subprocesos Plan de prueba> Agregar> Usuarios de


subprocesos> Grupo de subprocesos.

A continuación, agregue una solicitud HTTP de muestra, seleccione el plan de prueba, haga clic
con el botón derecho en Agregar > Muestra > Solicitud HTTP e ingrese los detalles como se
muestra a continuación:

Nombre− Administrar

Nombre del servidor o IP− servidor local

Número de puerto− 8080

Protocolo− Mantendremos esto en blanco, lo que significa que queremos HTTP como protocolo.

Sendero− jmeter/index.html
A continuación, agregue un extractor de expresiones regulares. Seleccione Administrar muestra de
solicitud HTTP, haga clic con el botón derecho en Agregar
> PublicarProcesador > Extractor de expresiones regulares.

La siguiente tabla proporciona una descripción de los campos utilizados en la captura de pantalla
anterior:

Campo Descripción

ReferenciaNombreEl nombre de la variable en la que se almacenará la prueba extraída


nombreref.

Expresión regular El patrón con el que se comparará el texto que se va a extraer. Los grupos de
texto que se extraerán están delimitados por los caracteres '′y′'. Usamos
'.+?' para indicar una sola instancia del texto encerrado por el
<td..>..</td>etiquetas En nuestro ejemplo la expresión es − <td >+ ?
</td>\s*

Modelo Cada grupo de texto extraído colocado como miembro de la variable


Persona, siguiendo el orden de cada grupo de patrón delimitado por '′y′'.
Cada grupo se almacena como refname_g#, donde refname es la cadena
que ingresó como nombre de referencia y # es el número de grupo. 1 a
se refiere al grupo 1, 2 a se refiere al grupo 2, etc. 0 se refiere a
cualquier coincidencia de la expresión completa. En este ejemplo, el ID
que extraemos se mantiene en Persona_g1, mientras que el valor
Nombre se almacena en Persona_g2.

JuegoNo. Dado que planeamos extraer solo la segunda aparición de este patrón,
emparejando al segundo voluntario, usamos el valor 2. El valor 0 haría
una coincidencia aleatoria, mientras que un valor negativo debe usarse
con el controlador ForEach.

PredeterminadoSi el elemento no se encuentra, este será el valor predeterminado. Este


campo es opcional. Puede dejarlo en blanco.

Agregue un oyente para capturar el resultado de este plan de prueba. Haga clic con el botón derecho
en el Grupo de subprocesos y seleccione la opción Agregar > Agente de escucha > Ver árbol de
resultados para agregar el agente de escucha.

Guarde el plan de prueba como reg_express_test.jmx y ejecute la prueba. La salida sería un


éxito como se muestra en la siguiente captura de pantalla:
JMETER - MEJORES PRÁCTICAS
JMeter tiene algunas limitaciones, especialmente cuando se ejecuta en un entorno distribuido. Seguir
estas pautas ayudará a crear una carga real y continua:

Use múltiples instancias de JMeter en caso de que la cantidad de subprocesos

sea mayor. Verifique las reglas de alcance y diseñe en consecuencia.

Utilice convenciones de nomenclatura siempre para todos los elementos.

Verifique la configuración predeterminada de conectividad del navegador

antes de ejecutar scripts. Agregue oyentes apropiadamente.

Aquí hay algunas sugerencias para reducir los requisitos de

recursos − Use el modo no GUI: jmeter -n -t test.jmx -l

test.jtl.

Utilice la menor cantidad posible de oyentes; si usa el indicador -l como se indicó


anteriormente, todos pueden eliminarse o deshabilitarse.

Deshabilite el oyente "Ver árbol de resultados", ya que consume mucha memoria y


puede hacer que la consola se congele o que JMeter se quede sin memoria. Sin
embargo, es seguro usar el oyente "Ver árbol de resultados" con solo "Errores"
marcados.

En lugar de usar muchos muestreadores similares, use el mismo muestreador en un bucle y


use variables CSVDataSet para variar la muestra. O tal vez use Access Log Sampler.

No utilice el modo funcional.

Utilice la salida CSV en lugar de XML.

Guarda solo los datos que necesites.

Utilice la menor cantidad de

aserciones posible.

Deshabilite todos los gráficos de JMeter, ya que consumen mucha memoria. Puedes ver
todo en tiempo realgraficosusandogramoelmiJTLsejército de reservabinortetúrinterfaz web.

No olvide borrar la ruta local de CSV Data Set Config si se usa. Limpie la

pestaña Archivos antes de cada ejecución de prueba.


Loatimbre[EsterahJax]/jax/salida/HTML-CSS/
jax.js

También podría gustarte