Ajoutez des requêtes aux tests de charge basés sur des URL dans Test de charge Azure
Dans cet article, vous découvrez comment ajouter des requêtes HTTP à un test de charge basé sur une URL dans Test de charge Azure. Utilisez un test de charge basé sur une URL pour valider les points de terminaison HTTP, tels que les applications Web ou les points de terminaison REST, sans connaissance préalable des outils de test de charge et des scripts.
Azure prend en charge deux manières de définir des requêtes HTTP dans un test de charge basé sur une URL. Vous pouvez combiner les deux méthodes dans un test de charge.
- Spécifiez les détails du point de terminaison HTTP, tels que l'URL du point de terminaison, la méthode HTTP, les en-têtes, les paramètres de requête ou le corps de la requête.
- Entrez une commande cURL pour la requête HTTP.
Si vous avez des requêtes dépendantes, vous pouvez extraire les valeurs de réponse d'une requête et les transmettre en entrée à une requête ultérieure. Par exemple, vous pouvez d’abord récupérer les détails du client, puis extraire l’ID client pour récupérer les détails de la commande client.
Si vous utilisez un test de charge basé sur une URL dans votre workflow CI/CD, vous pouvez transmettre un fichier JSON contenant les requêtes HTTP à votre test de charge.
Vous pouvez ajouter jusqu'à cinq requêtes à un test de charge basé sur une URL. Pour des tests de charge plus complexes, vous pouvez créer un test de charge en téléchargeant un script de test JMeter. Par exemple, lorsque vous avez plus de cinq requêtes, si vous utilisez des protocoles non HTTP ou si vous devez utiliser des plugins JMeter.
Prérequis
- Compte Azure avec un abonnement actif. Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
- Une ressource de test de charge Azure. Pour créer une ressource de test de charge, consultez Créer et exécuter un test de charge.
Ajoutez des requêtes avec des détails HTTP
Vous pouvez spécifier une requête HTTP pour un test de charge basé sur une URL en fournissant les détails de la requête HTTP. Le tableau suivant répertorie les champs que vous pouvez configurer pour une requête HTTP dans Test de charge Azure :
Champ | Détails |
---|---|
URL | L'URL du point de terminaison HTTP. Par exemple : https://www.contoso.com/products . |
Method | Méthode HTTP. Test de charge Azure prend en charge GET, POST, PUT, DELETE, PATCH, HEAD et OPTIONS. |
Paramètres de requête | (Facultatif) Entrez les paramètres de chaîne de requête à ajouter à l’URL. |
En-têtes HTTP | (Facultatif) Entrez les en-têtes HTTP à inclure dans la requête HTTP. Vous pouvez ajouter jusqu'à 20 en-têtes pour une requête. |
Corps de la demande | (Facultatif) Selon la méthode HTTP, vous pouvez spécifier le contenu du corps HTTP. Test de charge Azure prend en charge les formats suivants : données brutes, vue JSON, JavaScript, HTML et XML. |
Suivez ces étapes pour ajouter une requête HTTP à un test de charge basé sur une URL :
Dans le portail Azure, accédez à votre ressource de Test de charge.
Dans le volet de navigation de gauche, sélectionnez Tests pour voir tous les tests.
Dans la liste, sélectionnez votre test de charge, puis sélectionnez Modifier.
Assurez-vous de sélectionner un test de charge basé sur une URL dans la liste et d’avoir activé l’option Activer les paramètres avancés dans l’onglet Fonctions de base.
Accédez à l’onglet Plan de test et sélectionnez Ajouter une requête.
Sélectionnez Ajouter une entrée dans l’interface utilisateur pour saisir les détails de la requête HTTP.
Saisissez les détails de la requête HTTP, puis sélectionnez Ajouter pour ajouter la requête à votre test de charge.
Champ Description Format de la demande Sélectionnez Ajouter une entrée dans l’IU pour configurer les détails de la requête via les champs du portail Azure. Nom de la requête Entrez un nom unique pour la requête. Vous pouvez faire référence à ce nom de requête lorsque vous définissez les critères d'échec du test. URL URL du point de terminaison d’application. Méthode Sélectionnez une méthode HTTP dans la liste. Test de charge Azure prend en charge GET, POST, PUT, DELETE, PATCH, HEAD et OPTIONS. Paramètres de requête (Facultatif) Entrez les paramètres de chaîne de requête à ajouter à l’URL. En-têtes (Facultatif) Entrez les en-têtes HTTP à inclure dans la requête HTTP. Corps (Facultatif) Selon la méthode HTTP, vous pouvez également spécifier le contenu du corps HTTP. Test de charge Azure prend en charge les formats suivants : données brutes, vue JSON, JavaScript, HTML et XML. Sélectionnez Appliquer pour enregistrer le test de charge.
Ajoutez des requêtes en utilisant cURL
Au lieu de fournir les détails de la requête HTTP, vous pouvez également fournir des commandes cURL pour les requêtes HTTP dans votre test de charge basé sur l'URL. cURL est un outil de ligne de commande et une bibliothèque pour les requêtes basées sur les URL.
Suivez ces étapes pour ajouter une requête HTTP à un test de charge à l’aide d’une commande cURL.
Dans la liste des tests, sélectionnez votre test de charge, puis sélectionnez Modifier.
Assurez-vous de sélectionner un test de charge basé sur une URL dans la liste et d’avoir activé l’option Activer les paramètres avancés dans l’onglet Fonctions de base.
Accédez à l’onglet Plan de test et sélectionnez Ajouter une requête.
Sélectionnez la commande Ajouter cURL pour créer une requête HTTP à l’aide de cURL.
Saisissez la commande cURL dans le champ de commande cURL, puis sélectionnez Ajouter pour ajouter la requête à votre test de charge.
L'exemple suivant utilise cURL pour effectuer une requête HTTP GET, en spécifiant un en-tête HTTP :
curl --request GET 'http://www.contoso.com/customers?version=1' --header 'api-token: my-token'
Sélectionnez Appliquer pour enregistrer le test de charge.
Utilisez des variables dans les requêtes HTTP
Vous pouvez utiliser des variables dans votre requête HTTP pour rendre vos tests plus flexibles ou pour éviter d'inclure des secrets dans votre plan de test. Par exemple, vous pouvez utiliser une variable d’environnement avec le nom de domaine de votre point de terminaison, puis utiliser le nom de la variable dans les requêtes HTTP individuelles. L'utilisation de variables rend votre plan de test plus flexible et plus maintenable.
Avec les tests de charge basés sur des URL dans Test de charge Azure, vous pouvez utiliser des variables pour faire référence aux informations suivantes :
- Variables d'environnement : vous pouvez configurer des variables d'environnement pour le test de charge
- Secrets : configurez les secrets Azure Key Vault dans votre test de charge
- Valeurs d'un fichier d'entrée CSV : utilisez des variables pour les colonnes d'un fichier d'entrée CSV et exécutez une requête pour chaque ligne du fichier
- Variables de réponse : extraire les valeurs d'une requête HTTP précédente
La syntaxe pour faire référence à une variable dans une requête est : ${variable-name}
.
La capture d'écran suivante montre comment faire référence à une variable token
dans un en-tête HTTP en utilisant ${token}
.
Remarque
Si vous spécifiez des certificats, Test de charge Azure transmet automatiquement les certificats dans chaque requête HTTP.
Utilisez des variables de réponse pour les requêtes dépendantes
Pour créer des requêtes HTTP qui dépendent d'une requête précédente, vous pouvez utiliser des variables de réponse. Par exemple, dans la première requête, vous pouvez récupérer une liste d'éléments à partir d'une API, extraire l'ID du premier résultat, puis effectuer une requête ultérieure et transmettre cet ID en tant que paramètre de chaîne de requête.
Test de charge Azure prend en charge les options suivantes pour extraire des valeurs d’une requête HTTP et les stocker dans une variable :
- JSONPath
- XPath
- Expression régulière
Par exemple, l’exemple suivant montre comment utiliser un XPathExtractor pour stocker le corps d’une requête dans la variable de réponse token
. Vous pouvez ensuite l'utiliser ${token}
dans d'autres requêtes HTTP pour faire référence à cette valeur.
"responseVariables": [
{
"extractorType": "XPathExtractor",
"expression": "/note/body",
"variableName": "token"
}
]