Adición de solicitudes a pruebas de carga basadas en direcciones URL en Azure Load Testing

En este artículo, aprenderá a agregar solicitudes HTTP a una prueba de carga basada en direcciones URL en Azure Load Testing. Use una prueba de carga basada en direcciones URL para validar puntos de conexión HTTP, como aplicaciones web o puntos de conexión REST, sin tener conocimiento previo de las herramientas de prueba de carga y el scripting.

Soporte técnico de Azure dos maneras de definir solicitudes HTTP en una prueba de carga basada en direcciones URL. Puede combinar ambos métodos dentro de una prueba de carga.

  • Especifique los detalles del punto de conexión HTTP, como la dirección URL del punto de conexión, el método HTTP, los encabezados, los parámetros de consulta o el cuerpo de la solicitud.
  • Escriba un comando cURL para la solicitud HTTP.

Si tiene solicitudes dependientes, puede extraer valores de respuesta de una solicitud y pasarlos como entrada a una solicitud posterior. Por ejemplo, puede recuperar primero los detalles del cliente y extraer el identificador de cliente para recuperar los detalles del pedido del cliente.

Si usa una prueba de carga basada en direcciones URL en el flujo de trabajo de CI/CD, puede pasar un archivo JSON que contenga las solicitudes HTTP a la prueba de carga.

Puede agregar hasta cinco solicitudes a una prueba de carga basada en direcciones URL. Para pruebas de carga más complejas, puede crear una prueba de carga mediante la carga de un script de prueba de JMeter. Por ejemplo, si tiene más de cinco solicitudes, si usa protocolos que no son HTTP o si necesita usar complementos de JMeter.

Requisitos previos

Adición de solicitudes con detalles HTTP

Puede especificar una solicitud HTTP para una prueba de carga basada en direcciones URL proporcionando los detalles de la solicitud HTTP. En la tabla siguiente se enumeran los campos que puede configurar para una solicitud HTTP en Azure Load Testing:

Campo Detalles
URL Dirección URL del punto de conexión HTTP. Por ejemplo, https://www.contoso.com/products.
Método Método HTTP. Azure Load Testing admite GET, POST, PUT, DELETE, PATCH, HEAD y OPTIONS.
Parámetros de consulta (Opcional) Escriba los parámetros de cadena de consulta que se van a anexar a la dirección URL.
Encabezados HTTP (Opcional) Escriba los encabezados HTTP que se van a incluir en la solicitud HTTP. Puede agregar hasta 20 encabezados para una solicitud.
Cuerpo de solicitud (Opcional) En función del método HTTP, puede especificar el contenido del cuerpo HTTP. Azure Load Testing admite los siguientes formatos: datos sin procesar, vista JSON, JavaScript, HTML y XML.

Siga estos pasos para agregar una solicitud HTTP a una prueba de carga basada en direcciones URL:

  1. En Azure Portal, vaya al recurso de prueba de carga.

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

  3. En la lista, seleccione la prueba de carga y, a continuación, seleccione Editar.

    Asegúrese de seleccionar una prueba de carga basada en direcciones URL en la lista y que ha habilitado Habilitar la configuración avanzada en la pestaña Aspectos básicos .

  4. Vaya a la pestaña Plan de prueba y seleccione Agregar solicitud.

    Screenshot that shows how to add a request to a URL-based load test in the Azure portal.

  5. Seleccione Agregar entrada en la interfaz de usuario para escribir los detalles de la solicitud HTTP.

  6. Escriba los detalles de la solicitud HTTP y, a continuación, seleccione Agregar para agregar la solicitud a la prueba de carga.

    Campo Descripción
    Formato de solicitud Seleccione Agregar entrada en la interfaz de usuario para configurar los detalles de la solicitud a través de campos en Azure Portal.
    Nombre de solicitud Escriba un nombre único para la solicitud. Puede hacer referencia a este nombre de solicitud al definir criterios de error de prueba.
    URL Dirección URL del punto de conexión de la aplicación.
    Método Seleccione un método HTTP en la lista. Azure Load Testing admite GET, POST, PUT, DELETE, PATCH, HEAD y OPTIONS.
    Parámetros de consulta (Opcional) Escriba los parámetros de cadena de consulta que se van a anexar a la dirección URL.
    Encabezados (Opcional) Escriba los encabezados HTTP que se van a incluir en la solicitud HTTP.
    Cuerpo (Opcional) En función del método HTTP, también puede especificar el contenido del cuerpo HTTP. Azure Load Testing admite los siguientes formatos: datos sin procesar, vista JSON, JavaScript, HTML y XML.

    Screenshot that shows the details page to add an HTTP request by using UI fields in the Azure portal.

  7. Seleccione Aplicar para guardar la prueba de carga.

Adición de solicitudes mediante cURL

En lugar de proporcionar los detalles de la solicitud HTTP, también puede proporcionar comandos cURL para las solicitudes HTTP en la prueba de carga basada en direcciones URL. cURL es una herramienta de línea de comandos y una biblioteca para solicitudes basadas en direcciones URL.

Siga estos pasos para agregar una solicitud HTTP a una prueba de carga mediante un comando cURL.

  1. En la lista de pruebas, seleccione la prueba de carga y, a continuación, seleccione Editar.

    Asegúrese de seleccionar una prueba de carga basada en direcciones URL en la lista y que ha habilitado Habilitar la configuración avanzada en la pestaña Aspectos básicos .

  2. Vaya a la pestaña Plan de prueba y seleccione Agregar solicitud.

  3. Seleccione Agregar comando cURL para crear una solicitud HTTP mediante cURL.

  4. Escriba el comando cURL en el campo comando cURL y, a continuación, seleccione Agregar para agregar la solicitud a la prueba de carga.

    En el ejemplo siguiente se usa cURL para realizar una solicitud HTTP GET, especificando un encabezado HTTP:

    curl --request GET 'http://www.contoso.com/customers?version=1' --header 'api-token: my-token'
    

    Screenshot that shows the details page to add an HTTP request by using a cURL command in the Azure portal.

  5. Seleccione Aplicar para guardar la prueba de carga.

Uso de variables en solicitudes HTTP

Puede usar variables en la solicitud HTTP para que las pruebas sean más flexibles o para evitar incluir secretos en el plan de pruebas. Por ejemplo, podría usar una variable de entorno con el nombre de dominio del punto de conexión y, a continuación, usar el nombre de variable en las solicitudes HTTP individuales. El uso de variables hace que el plan de prueba sea más flexible y fácil de mantener.

Con las pruebas de carga basadas en direcciones URL en Azure Load Testing, puede usar variables para hacer referencia a la siguiente información:

La sintaxis para hacer referencia a una variable en una solicitud es: ${variable-name}.

En la captura de pantalla siguiente se muestra cómo hacer referencia a una token variable en un encabezado HTTP mediante ${token}.

Screenshot that shows the request details page in the Azure portal, highlighting a variable reference in an HTTP header.

Nota:

Si especifica certificados, Azure Load Testing pasa automáticamente los certificados en cada solicitud HTTP.

Uso de variables de respuesta para solicitudes dependientes

Para crear solicitudes HTTP que se abran en una solicitud anterior, puede usar variables de respuesta. Por ejemplo, en la primera solicitud podría recuperar una lista de elementos de una API, extraer el identificador del primer resultado y, a continuación, realizar un paso posterior y pasar este identificador como parámetro de cadena de consulta.

Azure Load Testing admite las siguientes opciones para extraer valores de una solicitud HTTP y almacenarlos en una variable:

  • JSONPath
  • XPath
  • Expresión regular

Por ejemplo, en el ejemplo siguiente se muestra cómo usar un XPathExtractor para almacenar el cuerpo de una solicitud en la variable de token respuesta. A continuación, puede usar ${token} en otras solicitudes HTTP para hacer referencia a este valor.

"responseVariables": [
    {
        "extractorType": "XPathExtractor",
        "expression": "/note/body",
        "variableName": "token"
    }
]