Prueba de carga de un sitio web mediante un script de JMeter en Azure Load Testing

Aprenda a usar un script de Apache JMeter para cargar una aplicación web con Azure Load Testing desde Azure Portal o mediante la CLI de Azure. Azure Load Testing permite tomar un script de Apache JMeter existente y usarlo para ejecutar una prueba de carga a escala de nube. Obtenga más información sobre qué funcionalidad de JMeter admite Azure Load Testing.

Los casos de uso para crear una prueba de carga con un script de JMeter existente incluyen:

  • Quiere reutilizar los scripts de JMeter existentes para probar la aplicación.
  • Quiere probar puntos de conexión que no están basados en HTTP, como bases de datos o colas de mensajes. Azure Load Testing admite todos los protocolos de comunicación que son compatibles con JMeter.
  • Para usar los comandos de la CLI, la VERSIÓN 2.2.0 o posterior de la CLI de Azure. Ejecute az --version para buscar la versión que está instalada en el equipo. Si tiene que instalar o actualizar la CLI de Azure, consulte Instalación de la CLI de Azure.

Requisitos previos

Creación de un recurso de Azure Load Testing

En primer lugar, cree el recurso de nivel superior para Azure Load Testing. Proporciona un lugar centralizado para ver y administrar planes de pruebas, resultados de pruebas y artefactos relacionados.

Si ya tiene un recurso de prueba de carga, omita esta sección y vaya a Creación de una prueba de carga.

Para crear un recurso de prueba de carga:

  1. Inicie sesión en Azure Portal con las credenciales de la suscripción de Azure.

  2. En el menú o la página Inicio de Azure Portal, seleccione Crear un recurso.

  3. En la página de Marketplace, busque y seleccione Azure Load Testing.

  4. En el panel de Azure Load Testing, seleccione Crear.

  5. En la página Crear un recurso de prueba de carga, escriba la siguiente información:

    Campo Descripción
    Suscripción Seleccione la suscripción de Azure que desea usar para este recurso de Azure Load Testing.
    Grupos de recursos Seleccione un grupo de recursos existente. O bien seleccione Crear nuevo y luego escriba un nombre único para el nuevo grupo de recursos.
    Nombre Escriba un nombre único para identificar el recurso de Azure Load Testing.
    El nombre no puede contener caracteres especiales, como \/""[]:|<>+=;,?*@&o espacios en blanco. El nombre no puede comenzar con un guion bajo (_) y no puede terminar con un punto (.) ni un guion (-). Debe tener una longitud de entre 1 y 64 caracteres.
    Ubicación Seleccione una ubicación geográfica para hospedar el recurso de Azure Load Testing.
    Esta ubicación también determina dónde se hospedan los motores de prueba y dónde se originan las solicitudes del cliente de JMeter.

    Nota

    Opcionalmente, puede configurar más detalles en la pestaña Etiquetas. Las etiquetas son pares nombre-valor que permiten categorizar los recursos y ver una facturación consolidada mediante la aplicación de la misma etiqueta en varios recursos y grupos de recursos.

  6. Una vez que haya terminado de configurar el recurso, seleccione Revisar y crear.

  7. Revise la configuración que proporcione y, a continuación, seleccione Crear. La operación de creación de la cuenta tarda unos minutos. Antes de avanzar, espere a que la página del portal muestre Se completó la implementación.

  8. Para ver el nuevo recurso, seleccione Ir al recurso.

    Screenshot that shows the deployment completion screen.

  9. Como alternativa, administre el acceso al recurso de Azure Load Testing.

    Azure Load Testing usa el control de acceso basado en rol (RBAC) para administrar los permisos del recurso. Si aparece este mensaje, la cuenta no tiene los permisos necesarios para administrar las pruebas.

    Screenshot that shows an error message in the Azure portal that you're not authorized to use the Azure Load Testing resource.

Crear una prueba de carga

A continuación, cree una prueba de carga mediante la carga de un script de prueba de Apache JMeter (archivo JMX). El script de prueba contiene las solicitudes de aplicación para simular el tráfico a los puntos de conexión de la aplicación.

Para crear una prueba de carga mediante un script JMeter existente en Azure Portal:

  1. En Azure Portal, vaya al recurso de Azure Load Testing.

  2. En el panel de navegación izquierdo, seleccione Pruebas para ver todas las pruebas.

  3. Seleccione + Crear y, a continuación, seleccione Cargar un script de JMeter.

    Screenshot that shows the Azure Load Testing page and the button for creating a new test.

  4. En la pestaña Datos básicos, escriba los detalles de la prueba de carga:

    Campo Descripción
    Nombre de la prueba Escriba un nombre de prueba único.
    Descripción de la prueba (Opcional) Escriba una descripción de prueba de carga.
    Ejecutar prueba después de la creación Seleccione esta configuración para iniciar automáticamente la prueba de carga después de guardarla.
  5. En la pestaña Plan de pruebas, seleccione el script de Apache JMeter y, después, seleccione Cargar para cargar el archivo en Azure.

    Screenshot that shows the Test plan tab.

    Nota:

    Puede cargar archivos de configuración de JMeter adicionales u otros archivos a los que se hace referencia en el archivo JMX. Por ejemplo, si el script de prueba usa conjuntos de datos CSV, puede cargar los archivos .csv correspondientes. Consulte también cómo leer datos de un archivo CSV. En el caso de los archivos que no sean scripts de JMeter y propiedades de usuario, si el tamaño del archivo es mayor que 50 MB, comprima el archivo. El tamaño del archivo ZIP debe ser inferior a 50 MB. Azure Load Testing descomprime automáticamente el archivo durante la ejecución de pruebas. Solo se permiten cinco artefactos zip con un máximo de 1000 archivos en cada zip y un tamaño total sin comprimir de 1 GB.

  6. Seleccione Revisar + crear. Revise toda la configuración y, después, seleccione Crear para crear la prueba de carga.

Puede actualizar la configuración de prueba en cualquier momento, por ejemplo, para cargar un archivo JMX diferente. Elija la prueba en la lista de pruebas y, a continuación, seleccione Editar.

Ejecutar la prueba de carga

Cuando Azure Load Testing inicia la prueba de carga, primero implementa el script JMeter y cualquier otro archivo en instancias del motor de prueba y, a continuación, inicia la prueba de carga.

Si selecciona Ejecutar prueba después de la creación, la prueba de carga se iniciará automáticamente. Para iniciar manualmente la prueba de carga que creó anteriormente, realice los pasos siguientes:

  1. Vaya al recurso de pruebas de carga, seleccione Pruebas en el panel izquierdo y, a continuación, seleccione la prueba que creó anteriormente.

    Screenshot that shows the list of load tests.

  2. En la página de detalles de la prueba, seleccione Ejecutar o Ejecutar prueba. A continuación, seleccione Ejecutar en el panel de confirmación para iniciar la prueba de carga. Opcionalmente, proporcione una descripción de la serie de pruebas.

    Screenshot that shows the run confirmation page.

    Sugerencia

    Puede detener una prueba de carga en cualquier momento desde Azure Portal.

  3. Observe los detalles de la ejecución de prueba, las estadísticas y las métricas de cliente en Azure Portal.

    Si tiene varias solicitudes en el script de prueba, los gráficos muestran todas las solicitudes y también puede filtrar por solicitudes específicas.

    Screenshot that shows the test run dashboard.

    Use las estadísticas de ejecución y la información de errores para detectar los problemas de rendimiento y estabilidad de la aplicación en carga.

Convertir una prueba de carga basada en url en una prueba de carga basada en JMeter

Si ha creado una prueba de carga basada en direcciones URL, puede convertir la prueba en una prueba de carga basada en JMeter. Azure Load Testing genera automáticamente un script JMeter al crear una prueba de carga basada en direcciones URL.

Para convertir una prueba de carga basada en direcciones URL en una prueba de carga basada en JMeter:

  1. Vaya al recurso de pruebas de carga y seleccione Pruebas para ver la lista de pruebas.

    Observe la columna Tipo de prueba que indica si la prueba está basada en direcciones URL o en JMeter.

  2. Seleccione los puntos suspensivos (...) para una prueba de carga basada en direcciones URL y, a continuación, seleccione Convertir en script de JMeter.

    Screenshot that shows the list of tests in the Azure portal, highlighting the menu option to convert the test to a JMeter-based test.

    Como alternativa, seleccione la prueba y, a continuación, seleccione Convertir en script de JMeter en la página de detalles de la prueba.

  3. En la página Convertir en script de JMeter, seleccione Convertir para convertir la prueba en una prueba basada en JMeter.

    Observe que el tipo de prueba cambió a JMX en la lista de pruebas.

    Screenshot that shows the list of tests in the Azure portal, highlighting the test type changed to JMX for the converted test.