Compartir vía


Exportación de resultados de pruebas de Azure Load Testing para su uso en herramientas de terceros

En este artículo, aprenderá a exportar tanto los informes como los resultados de las prueba de Azure Load Testing. Puede descargar los resultados mediante Azure Portal, como un artefacto en el flujo de trabajo de CI/CD, en JMeter mediante un agente de escucha de backend o copiando los resultados de una cuenta de almacenamiento de Azure. Estos resultados se pueden usar no solo para crear informes en herramientas de terceros, sino también para diagnosticar errores en las pruebas. Azure Load Testing genera los resultados de la prueba en formato de archivo de valores separados por comas (CSV) y proporciona detalles de cada solicitud de aplicación para la prueba de carga.

También puede usar los resultados de las pruebas para diagnosticar errores durante una prueba de carga. Los campos responseCode y responseMessage proporcionan más información sobre las solicitudes con error. Para obtener más información sobre cómo investigar errores, consulte Diagnóstico de pruebas de carga con errores.

Puede generar el panel de Apache JMeter desde el archivo de registro CSV siguiendo los pasos mencionados aquí.

También puede descargar el panel de resultados de Azure Load Testing en forma de informe HTML, con el fin de poder colaborar y verlo sin conexión.

Requisitos previos

  • Una cuenta de Azure con una suscripción activa. Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
  • Un recurso de Azure Load Testing que tiene una ejecución de prueba completada. Si necesita crear un recurso de Azure Load Testing, consulte la guía de inicio rápido Create and run a load test (Creación y ejecución de una prueba de carga).

Formato de archivo de resultados de pruebas

Azure Load Testing genera un archivo CSV de resultados de prueba para cada instancia del motor de pruebas. Obtenga información sobre cómo puede escalar horizontalmente la prueba de carga.

Azure Load Testing usa el Formato de registro CSV de Apache JMeter. Para obtener más información sobre los distintos campos, consulte el Glosario de JMeter en la documentación de Apache JMeter.

Puede encontrar los detalles de cada solicitud de aplicación para la ejecución de pruebas de carga en el archivo de resultados de pruebas. En el fragmento de código siguiente se muestra un resultado de prueba de ejemplo:

timeStamp,elapsed,label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,sentBytes,grpThreads,allThreads,URL,Latency,IdleTime,Connect
1676040230680,104,Homepage,200,OK,172.18.33.7-Thread Group 1-5,text,true,,1607,133,5,5,https://www.example.com/,104,0,100
1676040230681,101,Homepage,200,OK,172.18.33.7-Thread Group 1-3,text,true,,1591,133,5,5,https://www.example.com/,101,0,93
1676040230680,101,Homepage,200,OK,172.18.33.7-Thread Group 1-1,text,true,,1591,133,5,5,https://www.example.com/,98,0,94

Acceso y descarga tanto del informe como de los resultados de las pruebas de carga

Una vez finalizada la serie de pruebas de carga, puede acceder no solo a los resultados de estas pruebas, sino también al informe HTML tanto desde Azure Portal como en forma artefacto en el flujo de trabajo de CI/CD.

Importante

En el caso de las pruebas de carga con más de 45 instancias del motor o una duración de ejecución de prueba superior a 3 horas, el archivo de resultados no está disponible para su descarga. Puede configurar un agente de escucha de Backend de JMeter para exportar los resultados a un almacén de datos de su elección o copiar los resultados de un contenedor de cuenta de almacenamiento. En las pruebas que contengan muestreadores superiores a 30, el informe HTML descargado solo tendrá grafos para los datos agregados en todos los muestreadores. Los grafos no mostrarán datos de los muestreadores. Además, el informe descargado no admite gráficos correspondientes a las métricas del lado servidor.

Para descargar tanto los resultados de las pruebas como el informe HTML de una serie de pruebas en Azure Portal:

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

  2. En el panel izquierdo, seleccione Pruebas para ver una lista de pruebas y seleccione la que desee.

    Captura de pantalla en la que se muestra la lista de pruebas de un recurso de Azure Load Testing.

    Sugerencia

    Para limitar el número de pruebas que se muestra en la lista, puede usar el cuadro de búsqueda y el filtro Intervalo de tiempo.

  3. El archivo de resultados de pruebas se puede descargar en forma de carpeta comprimida de dos maneras:

    • Seleccione los puntos suspensivos (...) que hay junto a la ejecución de prueba de carga con la que trabaja y, después, seleccione Descargar archivo de resultados.

      Captura de pantalla en la que se muestra cómo descargar el archivo de resultados de una serie de pruebas de carga.

      Nota:

      Una ejecución de prueba de carga debe tener el estado Listo, Detenido o Error para que el archivo de resultados esté disponible para su descarga.

    • Seleccione Descargar en el panel Detalles de serie de pruebas. Para descargar los resultados, seleccione Resultados. Para descargar el informe HTML, seleccione Informe.

      Captura de pantalla en la que se muestra cómo descargar los resultados de la prueba del panel 'Detalles de la serie de pruebas'.

  4. Para extraer la carpeta y acceder a los archivos descargados puede usar cualquier herramienta de compresión y descompresión.

    Captura de pantalla que muestra el archivo ZIP de resultados de la prueba en la lista de descargas.

    La carpeta de resultados contiene un archivo CSV independiente para cada motor de prueba, así como los detalles de las solicitudes que dicho motor ejecutó durante la prueba de carga.

    La carpeta del informe contiene un archivo HTML que contiene un resumen de la serie de pruebas y grafos de las métricas de rendimiento para la visualización y colaboración sin conexión.

Exportación de resultados de pruebas mediante agentes de escucha backend de JMeter

Puede usar un agente de escucha de backend de JMeter para exportar resultados de pruebas a bases de datos como InfluxDB, MySQL o herramientas de supervisión como Azure Application Insights.

Puede usar los agentes de escucha back-end de JMeter predeterminados, los agentes de escucha de backend de jmeter-plugins.org o un agente de escucha de back-end personalizado en forma de archivo java (JAR).

En el fragmento de código siguiente se muestra un ejemplo de cómo usar el agente de escucha de backend para Azure Application Insights, en un archivo JMeter (JMX):

<BackendListener guiclass="BackendListenerGui" testclass="BackendListener" testname="Backend Listener" enabled="true">
  <elementProp name="arguments" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" enabled="true">
    <collectionProp name="Arguments.arguments">
      <elementProp name="testName" elementType="Argument">
        <stringProp name="Argument.name">testName</stringProp>
        <stringProp name="Argument.value">jmeter</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="connectionString" elementType="Argument">
        <stringProp name="Argument.name">connectionString</stringProp>
        <stringProp name="Argument.value">Enter your AppInsights connection string</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="liveMetrics" elementType="Argument">
        <stringProp name="Argument.name">liveMetrics</stringProp>
        <stringProp name="Argument.value">true</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="samplersList" elementType="Argument">
        <stringProp name="Argument.name">samplersList</stringProp>
        <stringProp name="Argument.value"></stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="useRegexForSamplerList" elementType="Argument">
        <stringProp name="Argument.name">useRegexForSamplerList</stringProp>
        <stringProp name="Argument.value">false</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="logResponseData" elementType="Argument">
        <stringProp name="Argument.name">logResponseData</stringProp>
        <stringProp name="Argument.value">OnFailure</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="logSampleData" elementType="Argument">
        <stringProp name="Argument.name">logSampleData</stringProp>
        <stringProp name="Argument.value">OnFailure</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
    </collectionProp>
  </elementProp>
  <stringProp name="classname">io.github.adrianmo.jmeter.backendlistener.azure.AzureBackendClient</stringProp>
</BackendListener>

Puede descargar el ejemplo completo del uso del agente de escucha backend de Azure Application Insights.

Copia de artefactos de prueba desde un contenedor de cuentas de almacenamiento

Importante

La copia de artefactos de prueba desde un contenedor de cuentas de almacenamiento solo está habilitada para pruebas de carga con más de 45 instancias de motor o con una duración de ejecución de prueba superior a tres horas.

Para copiar los resultados de la prueba y los archivos de registro de una ejecución de prueba desde una cuenta de almacenamiento, en Azure Portal:

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

  2. En el panel izquierdo, seleccione Pruebas para ver una lista de pruebas y seleccione la que desee.

    Captura de pantalla en la que se muestra la lista de pruebas de un recurso de Azure Load Testing.

  3. En la lista de ejecuciones de pruebas, seleccione la ejecución de pruebas.

    Captura de pantalla en la que se muestra la lista de series de pruebas de un recurso de Azure Load Testing.

    Sugerencia

    Para limitar el número de pruebas que se muestra en la lista, puede usar el cuadro de búsqueda y el filtro Intervalo de tiempo.

  4. En el panel Detalles de la ejecución de pruebas, seleccioneCopiar artefactos.

    Captura de pantalla en la que se muestra cómo copiar los artefactos de la prueba desde el panel

    Nota:

    Una serie de pruebas debe estar en los estados Listo, Detenido o Error para que el archivo de resultados esté disponible para su descarga.

  5. Copie la dirección URL de SAS del contenedor de la cuenta de almacenamiento.

    Puede usar la dirección URL de SAS en el Explorador de Azure Storage o AzCopy para copiar los archivos CSV de resultados y los archivos de registro de la ejecución de prueba en la cuenta de almacenamiento.

    La dirección URL de SAS es válida durante 60 minutos a partir del momento en que se genera. Si la dirección URL expira, seleccione Copiar artefactos para generar una nueva dirección URL de SAS.