Pruebas de carga de JMeter
La guía definitiva para 2023

Descripción general de la guía de pruebas de carga de JMeter



Las pruebas de rendimiento son un aspecto extremadamente importante del ciclo de vida del desarrollo de software y aplicaciones. Si las aplicaciones web, los sitios o las API van a ser utilizados por un gran número de usuarios, debe saber cómo van a hacer frente al tráfico máximo o a períodos prolongados de tráfico alto sostenido. Una búsqueda rápida de herramientas de pruebas de rendimiento descubrirá muchas opciones gratuitas, de código abierto y basadas en comerciales. Una de estas herramientas populares es Apache JMeter. Si es nuevo en las pruebas de rendimiento, ¿podría preguntarse qué es JMeter? ¿Y cómo funciona JMeter?

JMeter es una herramienta de pruebas de rendimiento basada en Java de código abierto extremadamente popular para ejecutar pruebas de carga basadas en protocolos en varios servicios web y de software, API (SOAP y REST), aplicaciones web y otros servicios web. En comparación con otras herramientas y soluciones de pruebas de rendimiento y carga que se ven en el mercado hoy en día, JMeter fue una de las primeras herramientas introducidas en el mercado de pruebas de rendimiento, por lo que sigue siendo popular y ampliamente acostumbrado hasta el día de hoy. Esta guía se establecerá para cubrir todos los diversos aspectos, beneficios, características y desventajas de JMeter. Veremos cómo funciona JMeter, cómo llevar a cabo pruebas de rendimiento, con JMeter, alternativas a JMeter, y mucho más.

pruebas de rendimiento de tensión de carga

Menú de la guía definitiva de JMeter

JMeter – Cómo funciona

En un nivel básico, JMeter funciona simulando visitantes a la aplicación o servicio permitiendo a los usuarios crear y enviar solicitudes HTTP (Protocolo de transferencia de hipertexto) al servidor. A continuación, se recopilan los datos de respuesta del servidor y los datos estadísticos se muestran visualmente para los usuarios en forma de gráficos e informes. A partir de los datos recopilados y creados, los usuarios pueden observar el comportamiento de la aplicación y los cuellos de botella de rendimiento, ofreciendo información sobre dónde deben realizarse las mejoras de las aplicaciones. Es importante tener en cuenta que JMeter no es un navegador, lo que significa que funciona solo a nivel de protocolo y no admite todas las acciones realizadas por el cliente o usuario, como renderizar JavaScript.

A pesar de esta limitación, JMeter proporciona una solución alternativa para estos problemas, al ofrecer características y elementos como el administrador de caché, el administrador de cookies y el administrador de encabezados, lo que permite a JMeter la capacidad de actuar y realizar más como lo haría un navegador real. JMeter es una aplicación de escritorio basada en Java, por lo que para empezar a utilizar JMeter, hay varios requisitos previos que debe cumplir antes de poder iniciar la prueba de rendimiento. Por ejemplo, debe tener instalada la versión más reciente de Java y debe cumplir los requisitos mínimos del sistema para poder utilizar JMeter. En comparación con las herramientas de prueba de carga basadas en SaaS, esto puede llevar tiempo y recursos adicionales.

¿Es JMeter la mejor herramienta de pruebas de carga?

Curva basada en el objetivo de LoadView

JMeter ha sido una de las herramientas de pruebas de carga de código abierto más populares durante mucho tiempo, lo que la convierte en una de las herramientas más comunes que los desarrolladores y los equipos de desarrollo de software se sienten cómodos utilizando a la hora de realizar pruebas de rendimiento. Además, debido a su longevidad en el mercado, hay una gran cantidad de documentación, apoyo comunitario y mejores prácticas para usar JMeter. Si a esto le sumamos el hecho de que se trata de un software gratuito de código abierto, desde el punto de vista presupuestario, lo convierte en una solución atractiva para equipos y organizaciones, ya que hay poco o ningún recurso necesario para empezar.

Sin embargo, a medida que la tecnología cambió y el auge del software basado en SaaS se volvió más frecuente, también lo hicieron las soluciones de pruebas de carga y estrés. Aunque todavía hay una necesidad de soluciones de pruebas de carga de código abierto como JMeter, hay muchas soluciones basadas en la nube que vienen empaquetadas con todas las características, beneficios y soporte, por un precio mes a mes rentable. Por ejemplo, el cambio de pruebas basadas en protocolos a pruebas basadas en explorador es fundamental para comprender el rendimiento desde la perspectiva del usuario. Los navegadores modernos de hoy en día proporcionan mucha más funcionalidad y soporte para aplicaciones web en comparación con los navegadores de principios de la década de 1990. Para recopilar todos los datos de rendimiento necesarios del lado cliente, necesita una herramienta o solución que pueda admitir pruebas de carga en exploradores reales.

Rendimiento frente a Pruebas de carga con JMeter: ¿Cuál es la diferencia?

Cuando generalmente pensamos en las pruebas de rendimiento, o cuando se utiliza el término pruebas de rendimiento, lo que normalmente viene a la mente son las pruebas de carga. Aún más, esos términos a veces se utilizan indistintamente. Sin embargo, hay una diferencia. Las pruebas de carga y esfuerzo son solo subconjuntos o tipos de las pruebas de rendimiento dentro de la familia de pruebas de rendimiento. Las pruebas de carga se pueden ejecutar en varios sistemas, sitios web, aplicaciones web, API y mucho más. Se aplica la carga simulada, normalmente comenzando en niveles más bajos, y aumentando lentamente la carga con el tiempo, con el fin de medir el rendimiento bajo carga y cómo responde el sistema general.

Las pruebas de esfuerzo y las pruebas de carga están relacionadas, pero el objetivo de las pruebas de esfuerzo es aumentar la cantidad de carga hasta que el sistema falle o el rendimiento se degrade. Normalmente, las pruebas de carga tendrán límites de carga predefinidos, para no provocar un error en el sistema. Otros tipos de pruebas de rendimiento incluyen pruebas de picos, pruebas de resistencia, pruebas de escalabilidad y pruebas de volumen. Aunque los planes de ejecución y los objetivos de estos tipos de pruebas de rendimiento difieren, las pruebas de rendimiento se llevan a cabo para comprender por qué las aplicaciones pueden estar cargando más lentamente de lo esperado, identificando problemas de escalabilidad relacionados con el uso de disco o CPU, o qué elementos o componentes específicos están obstaculizando el rendimiento.

¡Pruebe LoadView gratis!

Sin tarjeta de crédito, sin contrato.

Cómo realizar pruebas de carga con JMeter:
Instrucciones paso a paso para principiantes

Una herramienta de pruebas de rendimiento de código abierto como JMeter proporciona a las organizaciones la capacidad de ejecutar pruebas de rendimiento para sus aplicaciones web, sitios web y API, pero no tiene que lidiar con ninguna inversión inicial que venga con herramientas de pruebas de rendimiento basadas en comerciales o de pago. Al elegir una solución de pruebas de carga basada en escritorio de código abierto como JMeter frente a una solución basada en web de pago, como LoadView, hay muchas consideraciones en las que pensar. Si usted es sólo un principiante de JMeter, es posible que desee tomarse un tiempo para entender cómo funciona todo y leer artículos apropiados o ver videos sobre cómo empezar con JMeter. Veamos algunos de los pasos necesarios para instalar JMeter y cómo configurar una prueba de carga básica.

Paso 1: Verificar los requisitos del sistema

Al igual que cualquier otra aplicación de escritorio, debe asegurarse de que su sistema cumple con los requisitos básicos necesarios para poder ejecutar JMeter. Como mencionamos anteriormente en esta guía, JMeter es una aplicación basada en Java, por lo que debe asegurarse de que tiene Java instalado, así como la versión correcta. JMeter es compatible con versiones de Java 8 o superior. Además, para el rendimiento y la seguridad, se recomienda instalar las últimas versiones secundarias de JMeter. JMeter puede ejecutarse en diferentes sistemas operativos Windows, Mac y Linux, así que asegúrese de comprobar que el sistema operativo es compatible o que tiene una implementación java compatible.

Paso 2: Descargar binarios JMeter o código fuente

Una vez que haya comprobado que su sistema cumple con todos los requisitos necesarios del sistema, puede descargar los últimos archivos binarios o archivos de origen JMeter, en función de su entorno o requisitos específicos. Los archivos binarios contienen las versiones compiladas del programa JMeter y puede ejecutarlo inmediatamente. Por otro lado, los archivos de origen se pueden instalar sin utilizar un administrador de paquetes, lo que permite a los desarrolladores o equipos configurar y compilar el programa ellos mismos y tener más control sobre los programas instalados. En la mayoría de los casos, se instalan las versiones binarias del software. Y tenga en cuenta que hay diferentes tipos de descarga de archivos, incluyendo .zip, y extensiones de archivo .tgz.

Paso 3: Proceso de instalación de JMeter

Una vez que haya seleccionado la versión binaria o de origen de JMeter, se descargará en su sistema. Puede elegir abrir el archivo, moverlo a una nueva ubicación o crear una nueva ubicación de carpeta dentro del sistema para un acceso más rápido más adelante. Desde allí puede comenzar a extraer el archivo. Esto puede tardar unos minutos en completar todo el proceso de instalación. Dependiendo de su sistema operativo, puede encontrar diferentes pasos durante el proceso de instalación, pero una vez instalado JMeter, la funcionalidad de JMeter será la misma.

Página de JMeter

Paso 4: Interfaz de usuario JMeter

Al iniciar JMeter, se abrirá y se le llevará a la ventana Plan de prueba. A partir de aquí, usted será capaz de construir su plan de prueba. Esta ventana incluye acceso al menú y a la barra de herramientas principal situada cerca del lado izquierdo superior de la ventana. Puede acceder a algunas de las mismas características desde el menú y la barra de herramientas principal, pero la barra de herramientas principal proporciona un acceso más rápido a algunas de las herramientas y funcionalidades que utilizará durante el proceso de creación y configuración de pruebas de carga. Cerca del lado superior derecho de la ventana, verá opciones para el tiempo, registros (ver/ocultar) y usuarios durante la ejecución de la prueba.
La sección principal, llamada sección Editor, es donde podrá ver y configurar los distintos elementos y campos del Plan de prueba para la prueba de carga. A la izquierda de la sección Editor, verá la vista de árbol del Plan de pruebas a medida que avanza por el proceso de creación y configuración de pruebas y puede expandir y cerrar elementos individuales para profundizar en ellos individualmente.

Curva de paso de carga

Paso 5: Crear un plan de prueba de carga

Los usuarios de JMeter pueden comenzar a crear su plan de prueba de carga desde cero o también seleccionar entre varias plantillas de plan de prueba ubicadas en el menú desplegable Archivo. Las plantillas incluyen soap WebService Test Plan, plan de prueba web básico y avanzado, plan de prueba FTP (Protocolo de transferencia de archivos), plan de pruebas funcionales y otros. Estas plantillas de prueba incluirán todos los elementos, secciones y campos específicos necesarios que usará para crear y compilar el plan de pruebas de carga. Si es nuevo en las pruebas de rendimiento o en el propio JMeter, es posible que inicialmente prefiera utilizar plantillas en lugar de crear el plan de prueba desde cero, antes de pasar a planes de prueba más avanzados.

Para crear un plan de prueba, vaya a Archivo y seleccione Nuevo o seleccione el botón Nuevo en la barra de herramientas. Es importante tener en cuenta que debe ejecutar JMeter en modo GUI para crear el plan de prueba. El CLI, o interfaz de línea de comandos, se utiliza para ejecutar la prueba de carga. A continuación, hablaremos sobre cómo especificar el número de usuarios para la prueba de carga, que también se conoce como el grupo de subprocesos.

Paso 6: Crear grupo de subprocesos

Dentro del cuadro de diálogo Grupo de subprocesos, puede establecer y ajustar varias propiedades de subproceso, como Número de subprocesos (usuarios), Período de rampa (en segundos) y Recuento de bucles (cuántas iteraciones de prueba), así como acciones adicionales, como retrasos, tiempos de inicio y detención de pruebas y acciones que se deben realizar después de un error del muestreador.

Paso 7: Configurar sampler

En JMeter, los muestreadores son los que permiten a JMeter enviar los diferentes tipos de solicitudes. Por ejemplo, puede ser una solicitud HTTP (para un sitio web, aplicación o API), solicitud FTP, solicitud SMTP, solicitud TCP, así como muchos otros. Por ejemplo, si desea ejecutar una prueba de carga en una página web o sitio web, seleccionará solicitud HTTP. Desde aquí se le muestra introduciendo detalles adicionales como el protocolo (HTTP/S), el nombre del servidor o la IP, la ruta de acceso (para la página web específica) y qué tipo de solicitud, como GET, POST, HEAD, PUT, etc., que se puede utilizar para las pruebas de carga de API.

Paso 8: Configurar agentes de escucha

Para poder revisar los resultados del sampler, a continuación debe configurar lo que se conoce como agentes de escucha en JMeter. Dentro de la ventana Plan de prueba de JMeter, puede seleccionar entre muchos agentes de escucha diferentes, como Informe de resumen, Gráfico agregado, Ver árbol de resultados, Ver resultados en tabla, además de muchas otras opciones, para ver y analizar los resultados de las pruebas. Además, puede agregar varios agentes de escucha a un plan de prueba JMeter. A partir de este momento, el plan de prueba está completo y puede ejecutar la prueba.

Paso 9: Grabación de los scripts de prueba de carga

Si solo está buscando ejecutar una prueba de carga básica de nivel HTTP o protocolo, en términos de configuración de prueba, entonces realmente no hay nada más que necesite hacer. Sin embargo, si necesita configurar una prueba que se parezca más a las acciones del usuario, deberá usar su grabador de script de prueba HTTP(S). Por lo tanto, dentro de JMeter, esto agrega otro paso en el plan de prueba. Dentro del grupo de subprocesos, deberá agregar el controlador de grabación. El controlador de grabación le permite navegar a través de un sitio o aplicación, y grabará sus acciones a través de solicitudes HTTP/S. También puede agregar varios controladores de grabación por página. El controlador de grabación ahorra tiempo, por lo que no es deba agregar manualmente cada solicitud.

Sin embargo, el inconveniente es que todavía está grabando las solicitudes HTTP/S, en realidad no está grabando pasos dentro de un navegador real, desde la perspectiva del usuario. Ahora, también puede utilizar el servidor proxy JMeter, que le permite grabar scripts desde un explorador, pero configurar esto tarda un tiempo en configurarse. Debe entrar en la configuración de proxy del sistema, importar el certificado JMeter y, a continuación, configurar finalmente la configuración de proxy.

Como alternativa, una solución como LoadView, que utiliza el Grabador Web EveryStep, es un gran paso adelante de las opciones de grabación de JMeter, como scripting de puntos y clics en exploradores reales sin ninguna de las configuraciones complejas y que consumen mucho tiempo. Simplemente abra la grabadora y comience a escribir scripts.

Paso 10: Ejecute la prueba de carga

Después de configurar todos los detalles y la configuración de la prueba de carga, simplemente puede seleccionar el botón Ejecutar en la barra de herramientas y comenzará la prueba. Recuerde ejecutar la prueba en el modo CLI para obtener mejores resultados.

Paso 11: Revise los resultados de la prueba de carga

Dependiendo del tipo de agente de escucha que haya elegido, puede ver los resultados a medida que se ejecuta la prueba. Por ejemplo, si seleccionó Ver resultados en tabla, verá que los resultados se muestran a medida que se ejecuta cada ejecución o usuario. También se incluirán en los resultados métricas adicionales, como Tiempo (en milisegundos), Estado (muestra respuestas y errores válidos), Bytes y bytes enviados, Latenciay Tiempo de conexión. A partir de estos resultados puede ver dónde se produjo cualquier error o dónde puede haber tiempos de carga lentos.

métricas de rendimiento de pruebas de carga
¿Preguntas?

Programe una demostración gratuita de LoadView con un ingeniero de rendimiento,
o navegue por nuestra Base de conocimiento detallada para obtener más información.

Pruebas de rendimiento con JMeter
En qué se diferencia de las pruebas de carga

Más temprano en esta guía, hablamos sobre qué son las pruebas de rendimiento y los diferentes tipos de pruebas de rendimiento que existen bajo el paraguas de las pruebas de rendimiento, tales como pruebas de carga, pruebas de estrés, pruebas de escalabilidad, pruebas de pico, etc. Si nos fijamos en lo que JMeter ofrece, veremos que es el más adecuado para ejecutar pruebas de carga y pruebas de esfuerzo. Sin embargo, debido a que la carga se simula desde su propio dispositivo, será difícil determinar los resultados reales de las pruebas del mundo real utilizando JMeter solo en función de las pruebas basadas en protocolos.

Aún más, a medida que más aplicaciones dependen del explorador en lugar del servidor para la funcionalidad y el rendimiento, también debe alejarse de las herramientas que solo pueden realizar pruebas de carga basadas en protocolos. En el sitio web de JMeter, se indica claramente que no puede ejecutar o representar JavaScript como lo hace un navegador, solo se incluyen los tiempos de respuesta. Poder probar cómo se representa la aplicación o la página bajo carga es una gran parte de la experiencia del usuario. No solo eso, sino que los usuarios no se encuentran en la misma región geográfica que su empresa. La herramienta de pruebas de rendimiento adecuada también debe proporcionar una forma de llevar a cabo fácilmente pruebas distribuidas externas para obtener una mejor comprensión del rendimiento real en todas las regiones geográficas.

Una solución como LoadView, que también es adecuada para pruebas de carga, esfuerzo, picos y escalabilidad, proporciona características como exploradores reales, pruebas distribuidas, múltiples escenarios de curva de carga y una herramienta de scripting de apuntar y hacer clic, lo que la convierte en una excelente solución para probar el rendimiento de sus sitios, aplicaciones web, API y otros servicios web.

Es útil pensar en LoadView como una solución completa y total para sus requisitos de pruebas de carga para sitios web y aplicaciones web, y considerar a nuestro equipo en LoadView como sus socios expertos para todo lo relacionado con las pruebas de carga. Existen numerosas eficiencias y beneficios para una plataforma completa de pruebas de carga como LoadView, que justifica con creces el presupuesto a través del ahorro de tiempo y resultados superiores. Al usar LoadView, los equipos de DevOps pueden aprovechar al máximo su proceso de pruebas de carga sin scripts laboriosos, lo que conduce a mejores resultados.

Devolución de pruebas de carga

Los resultados de las pruebas de carga de LoadView también son los más precisos de la industria, ya que admitimos pruebas de navegador real y usuarios reales desde ubicaciones geográficas de todo el mundo, además de numerosos tipos de dispositivos. Los equipos pueden confiar en que los resultados de sus pruebas con LoadView son precisos, lo que significa que el tiempo y el enfoque se pueden poner en el desarrollo, sin preocuparse por si los resultados de las pruebas de carga son precisos debido a un error humano o una plataforma de prueba de carga de código abierto que no se mantiene o admite tan rigurosamente como LoadView. La tranquilidad que solo proviene de esto hace que nuestro sistema valga la pena para los equipos de DevOps más serios.

Más allá de esto, el soporte de LoadView es insuperable. Nuestros expertos en pruebas de carga están disponibles para ayudarlo en cada etapa de su proceso de prueba de carga. Esto permite a los equipos implementar pruebas de carga regulares en su proceso de DevOps de forma rápida y sencilla, lo que conduce a mejores resultados en términos de desarrollo y, finalmente, para los usuarios de sus sitios web y aplicaciones web. LoadView hace que las pruebas de carga colaborativas sean fáciles, eficientes y efectivas.

Cómo realizar pruebas de API con JMeter
Instrucciones completas

En la sección anterior, discutimos las instrucciones paso a paso sobre cómo configurar una prueba de carga basada en protocolos en un sitio web o aplicación con JMeter. En esta sección tocaremos las pruebas de diferentes API, como las API SOAP y REST, con JMeter. El proceso de instalación y configuración es el mismo que el anterior, por lo que no explicaremos ni cubriremos todo ese proceso de nuevo. Sin embargo, cubriremos algunos de los conceptos básicos en torno a las pruebas de API, así como las consideraciones en torno a la realización de pruebas de API con JMeter.

Pruebas de API de REST

Las API REST (Representational State Transfer), o API RESTful, se usan en el desarrollo de varios servicios web. A diferencia de las API soap, REST no es un protocolo, sino que es un estilo arquitectónico que se basa en las URI (identificadores uniformes de recursos) y el protocolo HTTP. REST se utiliza normalmente para mostrar API públicas a través de Internet. Cuando un usuario/cliente realiza una solicitud de API rest, es como buscar algo en Internet. Introduzca lo que está buscando y obtendrá una lista de resultados o, en el caso de las API de REST, recursos. Sin embargo, con una solicitud REST, hay varios componentes, como encabezado, datos (cuerpo), método y punto final (la ruta de la dirección URL). Lo que se obtiene de la solicitud suele tener formato JSON o XML, pero JSON es el formato más utilizado. Las API soap solo permiten el formato XML.

perspectivas de velocidad de página

Paso 1: Crear un plan de prueba

Para empezar, abra JMeter. Verá que hay una nueva ventana del plan de prueba se abrirá. O bien, si ya tiene JMeter abierto, puede seleccionar el botón Nuevo en la barra de herramientas principal para crear un nuevo plan de prueba.

Paso 2: Crear el grupo de subprocesos

Al igual que cubrimos en la sección anterior, la ventana Grupo de subprocesos es donde puede agregar el número de usuarios (subprocesos), establecer el tiempo de rampa y el número de iteraciones de prueba (recuento de bucles).

Paso 3: Configurar sampler

A continuación, necesitamos agregar el Sampler. Puede elegir entre algunos muestreadores preconfigurados en JMeter o seleccionar uno de los suyos. Para los fines de este escenario de pruebas de API, asumiremos que estamos usando una opción preconfigurada. Para ello, haga clic con el botón derecho en el grupo subproceso para abrir la ventana desplegable. Seleccione Agregary, a continuación, Muestreador. Desde aquí puede ver la lista de opciones de Sampler. Para las API de prueba, queremos seleccionar Solicitud HTTP y esto abrirá la siguiente ventana. Desde aquí, puede nombrar la prueba, así como configurar la configuración para la prueba de la API de REST. Una cosa a tener en cuenta es que hay dos secciones, Básica y Avanzada, dentro de la ventana Solicitud HTTP. Nos centraremos en la configuración básica para esta prueba. Observará varios campos, como Protocolo, Nombre del servidor o IP, Número de puerto, Solicitud HTTP (GET/POST/HEAD/PUT/DELETE, etc.), parámetros y mucho más.

Por lo tanto, para empezar, escriba la dirección URL de la API en el campo Nombre del servidor o IP (protocolo de Internet) (solo el nombre de dominio), junto con el protocolo adecuado y, en el campo Ruta de acceso, agregue la ruta de acceso de la API. Si se trata de una solicitud GET, seleccione GET en la lista Solicitud HTTP. Si tiene ciertos parámetros, como una página específica, puede agregar esa parte de la dirección URL en el campo Parámetros. También puede incluirlo en el campo Ruta de acceso, sin embargo, agregándolo al campo Parámetros, tiene opciones de campo adicionales, como Codificación deURL ?, Tipo de contenidoe Incluir iguales?

Por último, en algunas de sus solicitudes, deberá proporcionar los encabezados de su solicitud. Para ello, simplemente vaya a Solicitud HTTP en la ventana Plan de prueba. Al hacer clic con el botón derecho, se abrirá el menú desplegable. Desde aquí seleccione Agregary, a continuación, Elemento de configuración. Una nota adicional sobre este menú desplegable es que aquí es también donde iría a agregar cualquier método de autenticación de API. Esto abrirá las opciones que tiene disponibles. Para este ejemplo, elegiremos http Header Manager. Esto abrirá la ventana Administrador de encabezados HTTP, donde puede agregar los encabezados de la API. Una vez que haya finalizado la configuración, puede pasar al siguiente paso.

Paso 4: Agregar oyentes

Los agentes de escucha son los que se usan para guardar y ver los resultados de la prueba. Puede agregar tantos agentes de escucha como desee. Para agregar agentes de escucha, simplemente haga clic con el botón derecho en el grupo subproceso y seleccione Agregary, a continuación, Agente de escucha. Esto abrirá el menú desplegable, donde verá más de 15 opciones para elegir. Los agentes de escucha elegidos normalmente incluyen el árbol de resultados de vista y los resultados de vista en la tabla. Tenga en cuenta que para los agentes de escucha que proporcionan una representación gráfica, como Ver árbol de resultados, consumirá más memoria y CPU. Una vez agregados los agentes de escucha, puede guardar el plan de prueba.

Paso 5: Ejecute los resultados de prueba y vista

Después de configurar y guardar los detalles y la configuración de la prueba de carga, puede seleccionar el botón Ejecutar en la barra de herramientas y comenzará la prueba. Verá que los resultados de Sampler se cargan en la ventana y proporcionará los distintos detalles, datos y métricas, como latencia, códigos de respuesta, tiempo de conexión, etc., de la prueba de la API de REST.

Pruebas de API SOAP

Las API REST (Representational State Transfer) o RESTful Creating a SOAP (Simple Object Access Protocol) API test en JMeter son similares a los pasos para crear una prueba de carga de la API de REST. Sin embargo, SOAP es diferente de una API de REST, ya que es su propio protocolo, por lo que hay consideraciones que deben realizarse al probar la carga de las API soap, como la seguridad y el cumplimiento, el ancho de banda (las API soap normalmente necesitan más recursos) y la funcionalidad, como la lógica de reintentos, que las API de REST no tienen. Veamos los pasos necesarios para crear una prueba de API SOAP en JMeter.

perspectivas de velocidad de página

Paso 1: Plan de prueba

Hemos tocado esto en las secciones anteriores, pero JMeter proporciona una variedad de plantillas de plan de prueba. Se puede acceder a ellos a través del menú o el icono Plantillas ubicado en la barra de herramientas principal. Hay una opción denominada Creación de un plan de pruebas SOAP WebService. Al seleccionar esto, se creará y se abrirá el plan de prueba. Verá secciones adicionales, como Variables definidas por el usuario, Valores predeterminados de solicitud HTTP, Número de usuarios, etc. Y dado que se trata de una plantilla, también habrá valores de marcador de posición en algunos de los campos donde tendrá que introducir los datos e información adecuados.

Paso 2: Grupo de subprocesos

Al igual que cubrimos en la configuración de la API de REST, deberá agregar su número de usuarios, o subprocesos,período de aceleración y bucles,o probar iteraciones. Como subgrupo dentro del grupo de subprocesos principal, podrá acceder a la configuración de solicitud HTTP, como hemos cubierto para la configuración de la API de REST. Sin embargo, el aspecto de esta sección es un poco diferente, ya que de forma predeterminada mostrará el cuerpo de la solicitud de API soap. También se incluye las subsecciones Desaproteger de encabezado HTTP y Aserciones de respuesta. Y al igual que la configuración de la API de REST, también puede agregar elementos de configuración adicionales, como el Administrador de autorización HTTP,para los casos en los que necesite incluir los detalles específicos de la autorización.

Paso 3: Muestreadores de prueba

Para una prueba de carga de la API de SOAP, querrá agregar el muestreador de solicitudes HTTP. Desde esta ventana, puede especificar los detalles adecuados, como Nombre del servidor o IP, Ruta de acceso, Solicitud HTTP, Númerode puerto, así como los datos del cuerpo de la solicitud SOAP.

 

Paso 4: Probar agentes de escucha y ejecutar prueba

Una vez que haya configurado el plan de prueba, el último elemento de la lista es agregar los agentes de escucha, que mostrarán los resultados de la prueba. Una vez más, puede agregar tantos agentes de escucha como desee y según corresponda para la prueba de carga de la API de SOAP.

 

Paso 5: Ejecute la prueba de carga de la API SOAP

Una vez establecida la configuración y la configuración del plan de prueba, finalmente puede ejecutar la prueba de carga de la API de SOAP y revisar los resultados una vez finalizada.

Pruebas de API rest & SOAP con JMeter: Resumen

Como puede ver, la configuración de una prueba de carga de LA API rest o SOAP con JMeter viene con una gran cantidad de pasos y opciones de configuración diferentes, lo que equivale a mucho tiempo dedicado a configurar pruebas, en lugar de ejecutarlas. Una solución como LoadView le proporciona opciones sencillas y navegación mediante la creación de una prueba para las API rest o SOAP. La solución LoadView elimina todos estos pasos complicados y proporciona una interfaz fácil de usar que le guía a través de cada paso, por lo que no hay una configuración que consume mucho tiempo o tiempo dedicado a ir y venir ajustando la prueba. La solución también puede ejecutar pruebas con diferentes curvas de carga, para simular mejor los requisitos de prueba, así como ofrecer más de 20 ubicaciones geográficas desde las que ejecutar las pruebas de API. Con JMeter, el número de usuarios, o Subprocesos, depende de las capacidades de hardware de su dispositivo, lo que puede afectar al número de usuarios, así como a los resultados de las pruebas. En la siguiente sección hablamos más sobre LoadView y otras alternativas de JMeter, para que pueda tener una mejor idea de lo que ofrecen las diferentes soluciones de pruebas de carga.
pruebas de rendimiento de tensión de carga
¡Pruebe LoadView gratis!

Sin tarjeta de crédito, sin contrato.

Alternativas JMeter – Gratis y pagadas

Como desarrollador o probador de software, sabe que si bien las pruebas funcionales son importantes, las pruebas de rendimiento son un paso crítico del proceso de desarrollo de software. Su aplicación puede funcionar muy bien, pero ¿de qué sirve si la aplicación no se carga correctamente cuando es golpeada por cientos o miles de usuarios? Para el usuario, esto va a causar frustración y posteriormente, se irán lo que fuera que estaban planeando hacer. No puedes esperar que vuelvan. Si muchos usuarios van a acceder a sus sitios web, aplicaciones o API, ya sea externamente, desde diferentes regiones geográficas o internamente, desde su propia organización, deben probarse para asegurarse de que los tiempos de carga son bajos, los tiempos de respuesta son rápidos y que el contenido se representa correctamente. Todas estas métricas y más son responsables de ofrecer una experiencia de usuario perfecta.

La herramienta de prueba de rendimiento adecuada puede marcar la diferencia. Y aunque no faltan herramientas y soluciones gratuitas, de código abierto y de pruebas de rendimiento de pago, realmente se reduce a lo que mejor se adapte a sus necesidades, la experiencia y el presupuesto de su equipo. Las herramientas de pruebas de rendimiento de código abierto como JMeter, aunque gratuitas, no pueden satisfacer algunas de las demandas de pruebas de rendimiento que requieren las aplicaciones actuales.

LoadView

LoadView es una de las mejores soluciones de pruebas de rendimiento de pago en el mercado hoy en día. La solución ofrece un montón de características, como un grabador de script de punto y clic, acceso a una red global de servidores de inyector de carga y la capacidad de configurar diferentes escenarios de curva de carga para una mayor flexibilidad de prueba. A diferencia de JMeter, no se necesita ninguna infraestructura adicional o consideraciones. Todo está arreglado para ti. Y, a diferencia de JMeter, que solo puede proporcionar pruebas de carga a nivel de protocolo, LoadView utiliza exploradores reales, por lo que puede observar el rendimiento real de los sitios, aplicaciones y API más críticos. LoadView también ofrece varias opciones, como la lista blanca de direcciones IP de proxy estáticas o el uso de un agente in situ, para ejecutar pruebas en aplicaciones detrás del firewall, lo que le da a usted y a sus equipos aún más flexibilidad cuando se trata de pruebas de rendimiento.

Alt del logotipo de LoadView
LoadView
LoadView proporciona informes de rendimiento y paneles fáciles de leer, por lo que puede comprender claramente qué elementos contribuyen al rendimiento menos que ideal, así como incluir un vídeo de referencia para las pruebas de página web y aplicación web, para que pueda comparar el vídeo con los informes, para que pueda ver y comparar de primera mano cómo se ve desde la perspectiva de su usuario. LoadView ofrece planes mensuales y anuales, junto con soporte 24×7 para todos los clientes, sin importar qué plan tenga como lo hacen algunas otras herramientas. LoadView también utiliza la misma plataforma que las soluciones de Dotcom-Monitor, por lo que puede usar los scripts que creó durante las pruebas de carga para la supervisión continua. Por último, LoadView está constantemente desarrollando y lanzando nuevas características. Algunas actualizaciones recientes incluyen pruebas de carga para streaming de medios y compatibilidad con colecciones de cartero de pruebas de carga.

Webload

WebLoad

WebLoad, de RadView, es otra solución de pruebas de rendimiento basada en comerciales o de pago que puede encontrar al realizar investigaciones sobre la búsqueda de la herramienta de pruebas de carga adecuada para usted y su equipo. Dependiendo de sus necesidades específicas, WebLoad viene en un par de opciones diferentes: un modelo autohospedado o un modelo basado en la nube. Independientemente de la opción que elija, el software tiene el mismo aspecto y sensación.

Sin embargo, la versión local es como JMeter, donde debe hospedarla y administrarla desde su propio hardware, pero WebLoad ofrece funcionalidad adicional, como hospedarla dentro de su propio proveedor de nube, si tiene una. Las razones por las que una empresa elegiría auto-hospedarse podrían deberse a problemas de seguridad o políticas, así como a tener más control sobre la implementación. La opción basada en SaaS es como LoadView, donde la infraestructura de pruebas se administra completamente por usted.

En términos de creación de scripts de prueba, scripts WebLoad utiliza Selenium como grabador basado en proxy para script escenarios de pruebas de carga, sin embargo, que puede ser difícil de usar si no está familiarizado con Selenium. Selenium por sí solo tiene sus inconvenientes, pero ahí es donde WebLoad entra para proporcionar capacidades de pruebas de carga, como un gran número de usuarios simultáneos, informes, soporte técnico y más. En cuanto a los precios y los planes, los precios no están disponibles en su sitio, por lo que debe ponerse en contacto con ellos para obtener precios. Además, sus planes se limitan a tres opciones: Trial, Professional y Enterprise. Su plan Profesional sólo ofrece tres generadores de carga. Para acceder a ubicaciones ilimitadas, debe elegir el plan Enterprise.

Berenjena

Eggplant, de Keysight Technologies, es una plataforma de automatización diseñada para todos los factores del proceso de desarrollo de software, como pruebas funcionales y monitoreo. La solución proporciona pruebas asistidas por IA para ayudar a reducir el tiempo de prueba y proporcionar una implementación más rápida de las aplicaciones de software.

Logotipo de berenjenas
Al igual que JMeter, su producto de prueba de rendimiento, Eggplant Performance, debe estar instalado en su sistema local. Y como cualquier software, hay ciertos requisitos previos que deben cumplirse para poder instalarlo. Aún más, eggplant Performance se compone de varios componentes, como Performance Studio, Test Controller y Analyzer, Performance Injectors y Web Virtual Users, todos los cuales tienen diferentes requisitos de hardware.

Eggplant Performance requiere un poco de entrenamiento, especialmente para usuarios inexpertos. Su herramienta de scripting actúa como grabador de proxy para capturar todo el tráfico HTTP entre servidor/cliente. Los usuarios tienen opciones adicionales, como importar scripts desde archivos Selenium o HAR (Archivo HTTP). En términos de precios en comparación con otras herramientas de pruebas de carga, no hay precios listados, por lo que debe ponerse en contacto con su equipo para obtener un presupuesto, sin embargo, ofrecen una prueba gratuita.

Logotipo de Estímulo de estrés

Estímulo al estrés

Stress Stimulus es una solución de pruebas de carga y esfuerzo que se puede usar para probar sitios web, aplicaciones web y API. El producto debe descargarse en un equipo local, pero se puede configurar para que se ejecute desde la nube, ya sea a través de generadores de carga instantáneos en sus propias máquinas, nube privada o en redes de nube pública como AWS (Amazon Web Services) o Azure o instalados localmente desde un solo equipo.

La herramienta proporciona una variedad de ventajas y características, como la creación de scripts/escenarios de pruebas de carga desde el explorador con un Asistente para pruebas, compatibilidad con muchos protocolos y tecnologías de aplicaciones web y compatibilidad con métodos de autenticación básicos. Estímulo de tensión también funciona con Fiddler para combinar pruebas de rendimiento y depuración. Stress Stimulus proporciona varias ediciones de productos, como Free, Pro, Enterprise y Service Provider, y cada edición permite a los usuarios acceder a características y beneficios específicos.

Gatling

Gatling es otra popular herramienta de pruebas de carga de código abierto. Al igual que JMeter, ha existido durante mucho tiempo en la industria de pruebas de rendimiento. Gatling utiliza algunas tecnologías diferentes en su núcleo: Scala, Netty y Akka, que pueden no ser algo con lo que la mayoría de los desarrolladores o equipos estén familiarizados.

gatling

Normalmente, marcos como Python, JavaScript, PHP, C#y otros son algunos de los marcos más comunes que verías. A pesar de esto, Gatling sigue siendo popular y ampliamente utilizado porque Scala puede ejecutarse en la mayoría de los sistemas. Algunas de las ventajas de Gatling incluyen la creación de pruebas de carga como código, la ejecución de varios usuarios virtuales dentro de un único subproceso (a diferencia de JMeter) y se pueden integrar en entornos de CI. Sin embargo, a pesar de estas ventajas, Gatling está limitado en el número de tecnologías y protocolos que soporta, no proporciona una interfaz fácil de usar (que puede no ser un factor si su equipo es más técnico), y debido a que es una solución de código abierto, tiene una comunidad más pequeña de miembros que puede limitar su capacidad para obtener ayuda o apoyo cuando la necesita.

enfoque micro

Loadrunner

LoadRunner, de MicroFocus, es otra solución de pruebas de carga heredada de la que muchos desarrolladores y equipos han oído hablar, o incluso han utilizado, como ha existido durante mucho tiempo. Con el tiempo, la funcionalidad y los nombres han cambiado. Actualmente hay tres paquetes LoadRunner diferentes: LoadRunner Professional, LoadRunner Enterprise y LoadRunner Cloud (anteriormente StormRunner).

Algunas de las características y beneficios de LoadRunner incluyen el soporte de más de 50 tecnologías y marcos de aplicaciones web y móviles, soporte para más de 50 tecnologías de scripting e integraciones con muchas de las herramientas de CI (Integración Continua) y colaboración que su equipo ya utiliza. LoadRunner y su familia de productos y soluciones siempre ha sido más una solución de pruebas de carga a nivel empresarial, por lo que el costo de estas soluciones y soluciones asociadas va a ser bastante alto en comparación con otras herramientas de pruebas de carga basadas en la nube.

Langosta

Locust es una herramienta de pruebas de carga de código abierto basada en el marco de Python. Al igual que otras herramientas de código abierto que hemos discutido, la ventaja de Locust es que proporciona una manera de crear pruebas de carga en el código, sin embargo, ya que no hay interfaz de usuario, no hay funcionalidad para un grabador de script fácil de usar, como proporciona la solución LoadView, y solo captura y admite respuestas de protocolo HTTP. No es adecuado para comprender el rendimiento a nivel de cliente.

Langosta

Sin embargo, si tiene un equipo experto que se siente cómodo con Python y sus pruebas de carga de menor escala que se ejecutan correctamente, no es un problema. Además, con Locust, a diferencia de las plataformas de pruebas de carga basadas en la nube, debe usar el equipo local para ejecutar pruebas distribuidas y, si no puede admitir el número de usuarios simultáneos, debe utilizar máquinas adicionales, por lo que, de nuevo, hay consideraciones adicionales a tener en cuenta.

ábalo

BlazeMeter

BlazeMeter es una herramienta de pruebas funcionales y de rendimiento de pago basada en SaaS, que se basa en las características de código abierto de JMeter, ampliando sus capacidades, como la ampliación de pruebas de carga, el acceso a inyectores de carga externos, informes y paneles completos y fáciles de leer, y soporte para otras plataformas de código abierto, como Gatling, Selenium, Locust, Pepino y más.

Los usuarios obtienen las ventajas de utilizar una herramienta gratuita de código abierto con algunas de las ventajas de las pruebas de carga desde la nube. Sin embargo, algunas de las características que se incluyen en todos los planes LoadView, como un grabador de script de puntos y clics fácil de usar, pruebas detrás del firewall y compatibilidad con 24/7 solo son accesibles dentro de los planes BlazeMeter de nivel superior.

¡Pruebe LoadView gratis!

Sin tarjeta de crédito, sin contrato.

Gatling contra JMeter contra LoadView

Como hemos comentado en esta guía, la herramienta que decide para sus pruebas de rendimiento, ya sea una herramienta de pruebas de carga de código abierto o de pago, debe admitir las aplicaciones, tecnologías y protocolos que está probando, es fácil de usar y puede proporcionar los informes y datos necesarios, para que usted y sus equipos puedan comprender correctamente dónde se están produciendo problemas de rendimiento.

Ya hemos hablado de algunas de las alternativas JMeter más populares, pero ahora vamos a comparar Gatling, JMeter y LoadView, y cuál consideramos que es el más adecuado para aplicaciones web de pruebas de carga y estrés, sitios y API.

Elección de la herramienta de prueba de rendimiento correcta: Gatling vs JMeter vs LoadView

A la hora de elegir la herramienta de prueba de rendimiento adecuada, siempre hay ciertas ventajas y desventajas que ofrece cada herramienta. Gatling y JMeter son herramientas populares de código abierto que ofrecen la capacidad de más personalización y modificación por parte de los equipos de desarrollo. Sin embargo, eso significa que puede haber más de una curva de aprendizaje si usted y su equipo están empezando con estas herramientas. La flexibilidad de los scripts a menudo viene con configuraciones adicionales que pueden terminar siendo más lentas de lo previsto. Por otro lado, LoadView es una solución de pruebas de rendimiento basada en la nube totalmente administrada que puede ejecutar pruebas basadas en explorador y admite scripts de exploradores reales, una característica que JMeter y Gatling no ofrecen. Además, dado que tanto Gatling como JMeter están instalados en un dispositivo local, ejecutar pruebas a gran escala es difícil debido a las restricciones del sistema.

Ventajas de una herramienta de pruebas de carga basada en navegador

Una herramienta de pruebas de carga basada en explorador como LoadView ofrece muchas de las características y ventajas que las herramientas de código abierto no pueden proporcionar. Por ejemplo, al probar la carga de aplicaciones web, LoadView utiliza el Grabador Web EveryStep que permite a los usuarios crear scripts (navegadores de escritorio y móviles) simplemente navegando a través de la aplicación o página como desea que hagan los usuarios. Sin embargo, no hay codificación ni scripting manual implicados como JMeter y Gatling, sin embargo, si necesita personalizar el script de alguna manera, puede hacerlo. La configuración de configuración y prueba también es simple y sencilla.

Carga útil del inyector de carga de medios de transmisión

La solución LoadView le lleva a través de cada paso del proceso, por lo que usted y sus equipos pueden centrarse en la ejecución de pruebas. Por último, los usuarios de LoadView tienen acceso a más de 20 servidores de inyectores de carga de todo el mundo, por lo que las pruebas desde ubicaciones donde se encuentran los usuarios le proporcionarán datos de rendimiento más realistas en lugar de capturar respuestas HTTP desde su equipo local. Vea informes, paneles y gráficos de cascada para comprender cómo respondió la aplicación, el sitio web o la API a la prueba de carga.

BlazeMeter vs. JMeter vs. LoadView

Al igual que hemos tocado en las secciones anteriores de esta guía, BlazeMeter es la versión de pruebas de carga basada en la nube de JMeter, proporcionando una manera para que los desarrolladores lleven su prueba de carga al siguiente nivel y eliminando las limitaciones de JMeter, como informes, compatibilidad con scripts/protocolos y pruebas de aplicaciones web complejas. BlazeMeter y LoadView son plataformas de pruebas de carga basadas en la nube que permiten a los desarrolladores y equipos escalar verticalmente sus pruebas de carga y ejecutarlas desde varias ubicaciones geográficas. Sin embargo, en comparación con una solución como LoadView, BlazeMeter es una solución compleja y costosa, que proporciona más que solo capacidades de prueba de carga, y ahora proporciona pruebas funcionales y pruebas y monitoreo de API como parte de sus paquetes y planes, que algunos equipos pueden encontrar innecesarios.

Mientras que las herramientas de pruebas de carga de código abierto como JMeter todavía tienen un lugar en las pruebas de rendimiento, las aplicaciones web y las tecnologías son cada vez más complejas, razón por la cual una solución como LoadView es ideal. LoadView admite todos los protocolos, marcos y navegadores populares, diferentes opciones de curva de carga para pruebas más realistas y es una solución rentable en comparación con otras soluciones basadas en la nube en el mercado.

Flexible. Escalable. Poderoso.

Todo desde una solución de prueba de carga conveniente.

Las preguntas frecuentes definitivas de JMeter

Las pruebas de rendimiento son una pieza crítica del proceso de desarrollo de aplicaciones. Las herramientas de código abierto, como JMeter, proporcionan una forma gratuita y fácil para que los desarrolladores y equipos lleven a cabo pruebas de carga basadas en protocolos. No solo eso, sino que las pruebas de rendimiento también garantizan que el tiempo y el esfuerzo que se puso en el desarrollo de aplicaciones web desaprenda cuando se ponen delante de los usuarios. La carga lenta de aplicaciones, sitios y API restará experiencia a las aplicaciones, sitios y API de carga lenta. JMeter es una herramienta de pruebas de carga que ha existido durante mucho tiempo y tiene un amplio conjunto de características, capacidades y consideraciones de configuración.

A continuación se presentan algunas preguntas y respuestas frecuentes sobre JMeter.

Tabla de contenidos

 

¿Cuál es el período de aceleración de JMeter?

Al configurar la prueba de carga dentro de JMeter, uno de los campos que los usuarios deben tener en cuenta es el período de aceleración. El período de aceleración es el tiempo que se tarda en alcanzar el número de usuarios o subprocesos que establezca en la prueba. Por ejemplo, si establece el número de subprocesos en cinco y el período de aceleración es de 50 segundos, habrá un retraso de 10 segundos entre cada subproceso. Establecer un período de aceleración garantiza que todos los subprocesos no se ejecuten al mismo tiempo y evita una carga de trabajo demasiado alta al principio de la prueba.

 

¿Qué es un extractor JSON JMeter y cómo funciona?

El extractor JMeter JSON (JavaScript Object Notation), o como se llama con JMeter, el postprocesador JSON, hace exactamente lo que el nombre indica. Permite a los usuarios extraer datos, o contenido de texto, de respuestas JSON y compararlos con la solicitud, o pasar esos valores a otra solicitud. Hablamos anteriormente en esta guía sobre los muestreadores JMeter, que son los que realizan el trabajo real de su prueba JMeter. Si usa JSON Extractor, debe crearse como un elemento secundario en el Sampler que ha indicado.

 

¿Puedo usar JMeter en un formato de línea de comandos?

El plan de prueba de carga en JMeter se crea en modo GUI (Interfaz gráfica de usuario). Una vez creada la prueba, la prueba sí misma se puede ejecutar en el modo CLI (Interfaz de línea de comandos), que se había llamado previamente modo no GUI. La ejecución de la prueba en modo CLI consume menos memoria, por lo tanto, se pueden utilizar más subprocesos en un generador de carga.

 

¿Cuál es el rendimiento máximo de JMeter?

La cantidad de rendimiento que JMeter puede utilizar depende del hardware de su máquina local. Puede determinar el rendimiento por prueba y error, y aumentar el número de usuarios, o subprocesos, y cuando comience a recibir mensajes de error acerca de alcanzar su capacidad de memoria. Hay algunas soluciones alternativas para aumentar el número de usuarios, como ejecutarse en modo CLI, aumentar el espacio del montón o la memoria, usar la conexión LAN (redes de área local) en lugar de Wi-Fi o ejecutar scripts en máquinas adicionales.

 

¿Es JMeter la mejor herramienta de prueba de carga gratuita?

Si bien JMeter es una de las herramientas gratuitas de pruebas de carga de código abierto más populares, hay muchas otras herramientas gratuitas de pruebas de carga disponibles. Se trata de las aplicaciones o tecnologías para las que necesita soporte, las capacidades de su equipo y qué tipo de resultados e informes de pruebas necesita. Hay muchas herramientas que usan diferentes marcos de scripting y características de extensibilidad, por lo que es importante encontrar la que mejor se adapte a sus necesidades. Las soluciones de pruebas de carga de pago suelen ser más completas y eliminan gran parte de la molestia de tener que crear y configurar manualmente pruebas de carga.

 

¿Cuáles son las alternativas mejor pagadas a JMeter?

Hoy en día, los equipos de desarrollo y los probadores de rendimiento tienen muchas alternativas gratuitas y pagadas a JMeter. Hemos discutido algunos de estos en las secciones anteriores, como LoadView, WebLoad, BlazeMeter y LoadRunner. Algunas de las ventajas que las herramientas de pago tienen sobre las herramientas de código abierto es que reducen la cantidad de tiempo que deben tener para configurar y realizar pruebas de carga de script, normalmente admiten más tecnologías y marcos de trabajo, proporcionan acceso a más generadores de carga para que no tenga que administrar la red y soporte dedicado.

 

¿Cómo instalo JMeter?

La instalación de JMeter es sencilla y sencilla, sin embargo, dado que debe instalarse en una máquina local, la máquina en la que instale JMeter debe cumplir requisitos específicos del sistema. Además, dado que JMeter es una aplicación Java, debe tener instalada una versión compatible o actualizada de Java. JMeter proporciona un par de archivos binarios y de origen diferentes para que los usuarios elijan.

 

¿Cómo puedo cargar la prueba con JMeter?

Hay varios pasos implicados para cargar la prueba usando JMeter y estos pasos pueden diferir, dependiendo de lo que sea su prueba. Discutimos, en detalle, el proceso de configuración de pruebas de carga con JMeter en las secciones anteriores de esta guía, pero para simplificar, estos son los pasos implicados para las pruebas de carga con JMeter:

  • Configure el plan de pruebas de carga.
  • Agregue y configure el grupo de subprocesos.
    • Controlador de grabación
    • Número de subprocesos (usuarios)
    • Período de aceleración
    • Recuento de bucles (iteraciones)
  • Grabador de scripts de prueba (si graba interacciones de usuario)
    • Configuración de red
    • Instalar certificado
    • Configuración del navegador
  • Agregar y configurar Sampler
    • Solicitudes HTTP, FTP, SMTP o TCP, etc.
    • Nombre del servidor o IP
    • Ruta url
  • Agregar y configurar el oyente
    • Informe de resumen, gráfico agregado, árbol de resultados de vista, ver resultados en tabla, etc.
  • Prueba de ejecución
    • Recopilar y ver los resultados de las pruebas.

¿Cuál es un buen ejemplo de la afirmación de JMeter BeanShell?

Dentro de JMeter, los usuarios pueden usar componentes de BeanShell integrados. BeanShell es un intérprete basado en Java de código abierto. BeanShell proporciona a los usuarios múltiples ventajas, como extensibilidad de aplicaciones y scripts, depuración y trabajo con objetos Java y API dinámicamente. Hay muchas aserciones que JMeter admite en función del escenario de prueba. La aserción de BeanShell en JMeter permite a los usuarios comprobar la aserción específica mediante un script de BeanShell. Un ejemplo de esto sería comprobar si un servidor devuelve una respuesta o cadena específica o un valor en un campo JSON. También hay variables predefinidas que se pueden implementar en el script, como FailureMessage, SamplerData, SampleResult, etc. Se observa en JMeter que los usuarios deben pasar a elementos de prueba JSR223 y cambiar de las funciones de BeanShell a Groovy.

 

¿Hay algo como una certificación en línea JMeter?

No existe una certificación oficial en línea de JMeter a través del propio sitio JMeter, sin embargo, hay certificaciones en línea JMeter aunque otras empresas, como BlazeMeter, Udemy, VSkills, Edureka, y otras. También hay algunos excelentes tutoriales de usuarios habituales de JMeter en YouTube a los que se puede acceder para ayudarte a guiarte a través de pasos específicos o solucionar cualquier problema que puedas estar experimentando.

 

¿JMeter puede analizar una respuesta JSON?

Durante la creación y configuración del plan de prueba en JMeter, los usuarios tienen la opción de elegir entre varios postprocesadores. Uno de ellos incluye json extractor. Esta característica permite a los usuarios extraer los datos específicos que necesita mediante la sintaxis JSON-PATH y se configura después de Sampler (como un elemento secundario). Hay varios atributos en la ventana Postprocesador JSON-PATH, como Nombre, Nombres de variables, expresiones de ruta JSON, Números de coincidencia, Calcular concatenación var, etc.

 

¿Puedes usar JMeter con Jenkins y Maven?

JMeter se puede utilizar con CI/CD y herramientas de gestión, como Jenkins y Maven. Jenkins, al igual que JMeter, también es una herramienta basada en Java de código abierto, que permite a los usuarios automatizar sus pruebas. Maven se utiliza para crear y administrar proyectos basados en Java. Para usar JMeter con Jenkins, debe tener una cuenta jenkins activa (así como instalar el complemento Git) y tener Jenkins instalado en el mismo equipo en el que tiene JMeter instalado. Los scripts JMeter deben guardarse en Git para que se pueda acceder a ellos a través de Jenkins. Una vez que haya vinculado sus cuentas, puede pasar por el proceso de configuración y creación de su prueba a través de Jenkins. Con Maven, JMeter proporciona un plugin al que se puede acceder a través de GitHub, lo que permite a los usuarios ejecutar pruebas a través de su proyecto Maven en lugar de ejecutarlas como scripts.

 

¿Qué es un postprocesador JMeter?

Dentro de la configuración de prueba de carga JMeter, hay preprocesadores y postprocesadores. Los preprocesadores ejecutan alguna acción antes de una solicitud sampler, como obtener datos de la página web. Por otro lado, un postprocesador se ejecuta después de un elemento Sampler y normalmente se utiliza para extraer o analizar datos de la respuesta HTTP.

 

¿Qué es una variable de prev JMeter?

La variable prev es una de las varias variables utilizadas en los scripts de Apache Groovy antes de ejecutar el script. Otros ejemplos incluyen log (Registrador), ctx (objeto JMeterContext), vars (objeto JMeterVariables), accesorios (JMeterProperties), threadNamey sampler, por nombrar algunos. La variable prev se puede utilizar en acciones posteriores al procesador JSR223, como obtener cierta información, como tiempo de conexión, latencia, bytes, información de URL, etc., para un grupo de subprocesos de solicitud HTTP.

 

¿JMeter requiere un certificado de proxy?

Al utilizar el registrador de secuencias de comandos de prueba JMeter HTTP(S), los usuarios deben pasar por varios pasos de configuración para poder utilizar esa característica. Uno de esos pasos implica iniciar el servidor proxy JMeter para crear scripts de acciones desde el explorador. Para que eso suceda, los usuarios de JMeter deben instalar un certificado JMeter CA (Entidad de certificación). Las conexiones HTTP/S utilizan certificados para autenticar conexiones entre servidores y clientes/exploradores. La instalación del certificado JMeter CA permite a JMeter actuar como servidor para que pueda extraer las respuestas HTTPS (Hypertext Transfer Protocol Secure) del explorador.

 

¿Cómo evitar que las sesiones de JMeter caduse?

Dentro de cada uno de los diferentes muestreadores JMeter, hay opciones de configuración específicas, incluyendo la configuración de varios parámetros de tiempo de espera, como tiempo de espera de conexión, tiempo de espera de lectura, tiempo de espera de respuesta, tiempos de espera de consulta, etc. Si sampler no admite tiempos de espera, se debe establecer el tiempo de espera suficiente para que no se agote el tiempo de espera durante una prueba de carga.

 

¿Cómo evitar que las sesiones de JMeter caduse?

Las capturas de pantalla de JMeter de pruebas de ejemplo, cuadros de diálogo, pasos y todos los elementos de prueba de JMeter se pueden encontrar en toda la sección de preguntas frecuentes de JMeter, JMeter Wiki y JMeter, así como centros de recursos y aprendizaje de TI de terceros, como GitHub, GitLab, Guru99 y Bitbucket. JMeter tiene una amplia base de conocimientos de contenido y soporte respaldado por la comunidad.

 

¿Cuál es la mejor alternativa a JMeter?

Una herramienta de pruebas de carga de código abierto como JMeter requiere un amplio conocimiento de JMeter y conocimientos de programación, así como un equipo experimentado para configurar y ejecutar pruebas. JMeter fue uno de los primeros pioneros en pruebas de carga, pero los sitios web, las aplicaciones y las API se han vuelto más complejos y se requieren nuevas herramientas, soluciones y tecnologías de pruebas de carga. Hemos discutido muchas de las alternativas, de código abierto y de pago, a JMeter en esta guía, como Gatling, LoadView, WebLoad, LoadRunner, Locust y BlazeMeter. Si bien una opción gratuita de código abierto puede parecer atractiva al principio, viene con una gran cantidad de configuración manual adicional y trabajo. Una solución basada en web como LoadView permite a los evaluadores y equipos centrarse en las pruebas de carga, con navegadores reales, y los salva de las cargas de tener que administrar inyectores de carga y hardware adicional. LoadView es compatible con los protocolos y tecnologías más recientes, admite herramientas de terceros como Postman y proporciona una red de servidores de inyectores de carga en la nube de todo el mundo.

 

¿Vale la pena pagar por una herramienta de pruebas de carga?

Hay muchas grandes herramientas de pruebas de carga de código abierto, y discutimos algunas de ellas en esta guía. Es difícil pasar por alto una herramienta gratuita, las soluciones de código abierto pueden no ofrecer todas las características, fuera de la caja, que usted necesita. Muchas de las herramientas de pruebas de carga de pago admiten múltiples protocolos, integraciones de terceros, ofrecen herramientas de scripting y varios planes de precios y acceso a la compatibilidad cuando lo necesite. Además, como hemos visto con JMeter, es una herramienta extremadamente compleja que requiere mucho conocimiento para usar. Hay muchos pasos implicados en la configuración del plan de prueba y varias configuraciones que debe considerar. Si no ha utilizado JMeter antes, puede tomar algunas pruebas para hacerlo bien. Las herramientas de pruebas de carga de pago normalmente le guiarán a través del proceso, paso a paso, por lo que al final de completar el plan de prueba, está listo para usarse. No tendrá que perder tiempo adicional creando más pruebas o volviendo atrás y reconfigurando la prueba. Si puede encontrar una herramienta que admita las tecnologías que necesita probar, un gran conjunto de características y todo dentro de su presupuesto, vale la pena pagar por una herramienta de pruebas de carga.

Curvas de carga de pruebas de carga LoadView

Nuestra solución de pruebas de carga, LoadView, proporciona a los usuarios las mejores pruebas de carga basadas en la nube en un paquete rentable. A diferencia de JMeter, que no es un navegador real sólo utiliza pruebas basadas en protocolos, que, como hemos discutido en esta guía, no es suficiente para los sitios web y aplicaciones de hoy en día. Gran parte de la ejecución de rendimiento ahora se inserta en los exploradores, por lo que es fundamental tener una solución que pueda crear scripts, ejecutar y simular acciones reales del usuario dentro del explorador. JMeter no puede ejecutar solicitudes JavaScript y, por lo tanto, AJAX (JavaScript asincrónico y XML), por lo que es una gran desventaja para muchos evaluadores de rendimiento. LoadView, junto con el Grabador Web EveryStep, es compatible con tecnologías dinámicas de aplicaciones web como JavaScript, AJAX, Java, HTML5, PHP y más. Crear scripts de pruebas de carga es tan fácil como navegar a través de sus aplicaciones como un usuario normal. Además, la plataforma LoadView proporciona a los usuarios una red mundial de generadores de carga basados en la nube, no la carga generada desde su máquina local como JMeter ofrece, lo que proporciona condiciones más realistas y, por lo tanto, mejores resultados de pruebas y informes.

¿Cómo maneja JMeter los datos dinámicos en las pruebas de carga?

JMeter puede manejar eficazmente datos dinámicos en pruebas de carga utilizando varios elementos como Regular Expression Extractor o JSON Extractor. Estos elementos permiten a JMeter capturar datos dinámicos de la respuesta de un servidor y reutilizarlos en solicitudes posteriores. Esto es crucial para probar aplicaciones en las que los identificadores de sesión o los tokens de seguridad cambian con cada solicitud.

¿Se puede integrar JMeter con otras herramientas para mejorar las pruebas?

Sí, JMeter se puede integrar con una variedad de otras herramientas para mejorar sus capacidades de prueba. Por ejemplo, se puede usar con Selenium para pruebas basadas en navegador o integrarse con herramientas de monitoreo como Grafana y Prometheus para un análisis más profundo de las métricas de rendimiento. Esto hace que JMeter sea una opción versátil para diversos entornos de prueba.

¿Qué son los temporizadores JMeter y cómo afectan a las pruebas de carga?

Los temporizadores JMeter son un componente vital para simular el comportamiento del usuario en el mundo real. Introducen retrasos entre solicitudes, lo que puede ayudar a crear escenarios de carga más realistas. Los tipos de temporizadores incluyen temporizadores constantes, temporizadores aleatorios gaussianos y temporizadores aleatorios uniformes, cada uno de los cuales proporciona diferentes formas de simular el tiempo de pensamiento del usuario.

¿Cómo gestiono las cookies y las sesiones en JMeter?

JMeter proporciona el Administrador de cookies HTTP y el Administrador de caché HTTP para manejar las cookies y la caché, respectivamente. Estos administradores ayudan a simular un navegador real almacenando y enviando cookies como lo haría un navegador web normal. Son esenciales para mantener las sesiones y administrar los estados de los usuarios durante las pruebas de carga.

¿Cuáles son algunas de las mejores prácticas para la creación de scripts en JMeter?

Al crear scripts en JMeter, se recomienda:

Utilice convenciones de nomenclatura para facilitar la identificación de los elementos.
Modularice las pruebas con fragmentos de prueba para su reutilización.
Parametrice las pruebas para cambiar fácilmente variables como los nombres de los servidores y las credenciales de usuario.
Use las aserciones de forma inteligente para validar las respuestas sin sobrecargar el plan de pruebas.
Guarde regularmente su plan de pruebas para evitar la pérdida de datos.
¿Puede JMeter simular diferentes condiciones de red?
JMeter le permite simular varias condiciones de red utilizando la configuración “HTTP Request Defaults”. Esto puede incluir la configuración del ancho de banda, la latencia y la pérdida de paquetes, lo que permite a los evaluadores comprender cómo funciona una aplicación en diferentes condiciones de red.

¿Cómo soporta JMeter las pruebas de bases de datos?

JMeter soporta las pruebas de bases de datos a través de JDBC Request. Esto le permite cargar bases de datos de prueba mediante la ejecución de consultas SQL, procedimientos almacenados u otras operaciones SQL. Requiere la configuración de una configuración de conexión JDBC en la que se definen los detalles y las credenciales de la base de datos.

¿Qué son las aserciones de JMeter y cómo se utilizan?

Las aserciones en JMeter se utilizan para validar la respuesta de una solicitud realizada al servidor. Ayudan a comprobar si la respuesta contiene cierto texto, coincide con una expresión regular o cumple ciertas condiciones. Entre las aserciones comunes se incluyen la aserción de respuesta, la aserción JSON y la aserción de tamaño.

¿Cómo se gestionan los grandes planes de pruebas en JMeter?

Para administrar planes de prueba grandes en JMeter, es importante:

Divida el plan de pruebas en módulos más pequeños y manejables.
Utilice el botón “Incluir controlador” para incluir fragmentos de prueba externos.
Compruebe y elimine regularmente los elementos innecesarios para optimizar el rendimiento.
Utilice las funciones y variables de JMeter para reducir la redundancia.

¿Cuál es la función del JMeter Listener y cuáles se utilizan habitualmente?

Los oyentes de JMeter se utilizan para ver y analizar los resultados de las pruebas. Entre los agentes de escucha más utilizados se incluyen Ver árbol de resultados, Informe de resumen y Resultados de gráficos. Proporcionan diferentes formas de visualizar los datos, lo que ayuda a identificar problemas de rendimiento y cuellos de botella.

¿Se puede utilizar JMeter para pruebas de estrés y cómo?

Sí, JMeter se puede utilizar para pruebas de estrés configurándolo para generar una carga más allá de la capacidad normal de la aplicación. Esto ayuda a identificar el punto de ruptura del sistema y a comprender cómo se comporta en condiciones extremas.

¿Es posible automatizar las pruebas de JMeter?

Las pruebas de JMeter se pueden automatizar utilizando su interfaz de línea de comandos. Esto es especialmente útil para integrar las pruebas de JMeter en canalizaciones de integración continua. Herramientas como Jenkins pueden activar pruebas de JMeter, lo que permite realizar pruebas de rendimiento periódicas y automatizadas.

¿Cuál es la importancia de los grupos de subprocesos en JMeter?

Los grupos de subprocesos en JMeter representan usuarios o subprocesos que realizan una serie de acciones. Definen el número de usuarios que se van a simular, el período de aceleración y el número de veces que se va a ejecutar la prueba. La configuración adecuada de los grupos de subprocesos es crucial para simular escenarios de usuario realistas.

¿Cómo se depura un plan de pruebas de JMeter?

Para depurar un plan de pruebas de JMeter, puede:

Utilice el visor de registros para comprobar si hay errores o problemas durante la ejecución de la prueba.
Agregue Debug PostProcessors para ver los valores de las variables y las respuestas.
Utilice aserciones para validar si las solicitudes devuelven la respuesta esperada.
Construya gradualmente su plan de pruebas, agregando y probando elementos de uno en uno.

¿Qué son las pruebas distribuidas en JMeter y cuándo se utilizan?

Las pruebas distribuidas en JMeter implican el uso de múltiples sistemas (nodos remotos) para generar una carga mayor en el servidor. Esto es especialmente útil cuando la prueba requiere más recursos de los que puede proporcionar una sola máquina o cuando se desea simular el tráfico desde diferentes ubicaciones.

Lleve sus pruebas de carga a la
Siguiente nivel

Experimente características sin igual con escalabilidad ilimitada. Sin tarjeta de crédito, sin contrato.