Créer et gérer des tests dans Test de charge Azure

Terminée

Découvrez comment créer et gérer des tests de charge dans votre ressource Test de charge Azure.

Note

Les commandes Azure CLI dans cette unité utilisent la syntaxe de commande en vigueur au moment de la rédaction. Azure CLI et ses extensions sont souvent mis à jour, donc passez en revue la az load référence pour obtenir les informations les plus récentes.

Créer une ressource de test de charge Azure.

Tout d’abord, créez la ressource de premier niveau pour Test de charge Azure. Elle fournit un endroit centralisé pour visualiser et gérer les plans de test, les résultats de test et les artefacts connexes.

Vous pouvez créer une ressource de test de charge à l’aide de Azure CLI. Les étapes suivantes créent la ressource et affichent ses détails.

  1. Vous pouvez vous connecter à Azure :

    az login
    
  2. Vous pouvez définir des valeurs de paramètre :

    Les commandes suivantes utilisent ces valeurs pour créer la ressource de test de charge.

    loadTestResource="<load-testing-resource-name>"
    resourceGroup="<resource-group-name>"
    location="East US"
    
  3. Vous pouvez créer un groupe de ressources avec la az group create commande :

    az group create -n $resourceGroup -l $location
    
  4. Vous pouvez créer une ressource de test de charge Azure avec la az load create commande :

    az load create --name $loadTestResource --resource-group $resourceGroup --location $location
    
  5. Une fois la ressource créée par Azure, vous pouvez en afficher les détails avec la commande az load show :

    az load show --name $loadTestResource --resource-group $resourceGroup
    

Créer un test de charge

Le portail Azure fournit trois options pour créer un test de charge. Vous pouvez choisir une option en fonction de la complexité du scénario de test et des ressources de test que vous avez déjà. Cette unité se concentre sur un script JMeter.

  • Test basé sur l’URL.
  • Script de test JMeter (JMX).
  • Script de test Locust.

Plan de test

Le plan de test contient tous les fichiers requis pour exécuter votre test de charge. Au minimum, le plan de test doit contenir un script JMeter *.jmx. Test de charge Azure prend en charge un fichier JMX par test de charge.

Outre le script de test, vous pouvez charger un fichier de propriété utilisateur, des fichiers de configuration ou des fichiers de données d’entrée, tels que des fichiers CSV.

  1. Vous pouvez accéder au plan de test.

  2. Vous pouvez sélectionner les fichiers requis à partir de votre ordinateur local et les charger dans Azure.

    Capture d’écran montrant la page du plan de test pour la création d’un test dans le portail Azure, mettant en évidence la fonctionnalité de chargement.

    Test de charge Azure stocke tous les fichiers dans un seul référentiel. Si votre script de test référence la configuration ou les fichiers de données, vous pouvez supprimer les chemins relatifs du fichier JMX.

  3. Si votre test utilise des données d’entrée CSV, vous pouvez activer split CSV uniformément entre les moteurs de test.

    Par défaut le test de charge copie et traite vos fichiers d’entrée non modifiés sur toutes les instances de moteur de test. Le test de charge Azure vous permet de fractionner uniformément les données d’entrée CSV sur toutes les instances du moteur. Si vous avez plusieurs fichiers CSV, chaque fichier est réparti uniformément.

    Par exemple, si vous avez un fichier d’entrée CSV client volumineux et que le test de charge s’exécute sur 10 moteurs de test parallèles, chaque instance traite un dixième des clients.

    Capture d’écran montrant la case à cocher pour activer le fractionnement des fichiers C S V d’entrée lors de la configuration d’un test dans le portail Azure.

Conseil

Vous pouvez télécharger un fichier à partir de l’onglet Plan de test en sélectionnant le nom du fichier dans la liste. Par exemple, vous pouvez télécharger le script JMeter généré pour un test rapide. Vous pouvez ensuite modifier et charger le script.

Paramètres

Vous pouvez utiliser des paramètres pour rendre votre plan de test configurable au lieu de coder des valeurs en dur dans le script JMeter. Vous pouvez spécifier des paires clé-valeur dans la configuration du test de charge et référencer chaque valeur dans le script JMeter à l’aide de son nom de paramètre.

Capture d’écran montrant comment configurer des paramètres lors de la création d’un test dans le portail Azure.

  1. Vous pouvez spécifier des variables d’environnement pour passer des paramètres non sensibles à votre script de test.

    Par exemple, vous pouvez utiliser une variable d’environnement pour passer le nom de domaine cible ou le numéro de port au script de test.

  2. Vous pouvez ajouter des références aux secrets soutenus par Azure Key Vault.

    Vous pouvez utiliser des secrets pour passer des paramètres sensibles, tels que des mots de passe ou des jetons d’authentification, au script de test. Vous stockez les valeurs secrètes dans Azure Key Vault. Vous ajoutez ensuite une référence au secret dans la configuration du test de charge et utilisez le nom du paramètre dans votre script. Test de charge Azure récupère la valeur secrète de Azure Key Vault.

  3. Vous pouvez ajouter des références aux certificats clients soutenus par Azure Key Vault.

    Si votre application de test de charge utilise des points de terminaison qui reposent sur une authentification par certificat, vous pouvez ajouter les certificats à Azure Key Vault. Vous pouvez ensuite ajouter une référence de certificat à la configuration du test de charge. Test de charge Azure injecte automatiquement les certificats dans les requêtes web dans votre script JMeter.

  4. Vous pouvez sélectionner l’identité managée que Test de charge Azure utilise pour accéder aux secrets ou certificats dans votre coffre de clés.

    La sélection de l’identité n’accorde pas l’accès au coffre de clés. Vous pouvez accorder l’autorisation d’identité pour lire les secrets ou certificats requis. Pour un coffre de clés qui utilise Azure RBAC, vous pouvez attribuer le rôle Utilisateur des secrets Key Vault dans le périmètre le plus restreint possible.

Charge

Les paramètres de charge contrôlent le nombre et le positionnement des instances du moteur de test. D’autres instances augmentent la charge totale qu’un test JMeter peut générer. Vous pouvez également connecter les moteurs à un réseau virtuel lorsque le point de terminaison cible n’est pas accessible publiquement.

  1. Vous pouvez spécifier le nombre d’instances de moteur de test.

    Test de charge Azure met automatiquement à l’échelle votre test de charge sur l’ensemble des instances. Les moteurs de test exécutent le script de test JMeter en parallèle. Le nombre total d’utilisateurs simulés est égal au nombre d’utilisateurs virtuels (threads) que vous spécifiez dans le script JMeter multiplié par le nombre d’instances de moteur de test.

  2. Vous pouvez configurer la connectivité de réseau virtuel.

    Vous pouvez connecter votre test de charge à un réseau virtuel Azure pour tester des points de terminaison hébergés de manière privée ou sur site.

    Pour vous connecter à un réseau virtuel, vous pouvez sélectionner Private for Traffic mode. Vous pouvez ensuite sélectionner le réseau virtuel et le sous-réseau.

    Capture d’écran montrant comment configurer le nombre d’instances de moteur de test lors de la création d’un test dans le portail Azure.

Critères de test

Les critères de test définissent les attentes en matière de performances qui déterminent le résultat du test. Les métriques du client évaluent le comportement des demandes, tandis que les paramètres d’arrêt automatique protègent contre les tests qui génèrent des erreurs soutenues. Vous pouvez configurer les deux types de critères avant d’exécuter le test.

  1. Vous pouvez spécifier des critères d’échec de test en fonction des métriques du client.

    Lorsqu’une métrique dépasse son seuil, Test de charge Azure marque l’échec du test. Test de charge Azure prend actuellement en charge les métriques côté client suivantes pour les critères d’échec :

    • Temps de réponse
    • Demandes par seconde
    • Nombre total de demandes
    • Latence
    • Pourcentage d’erreurs

    Vous pouvez spécifier des critères d’échec pour l’ensemble du test de charge ou les affecter à des requêtes spécifiques dans le script JMeter. Par exemple, vous pouvez vérifier que le temps de réponse de la page d’accueil ne dépasse pas un seuil spécifique.

  2. Vous pouvez configurer des critères d’arrêt automatique.

    Test de charge Azure peut arrêter automatiquement l’exécution d’un test de charge lorsque le taux d’erreur dépasse un seuil donné. Vous pouvez activer ou désactiver cette fonctionnalité. Vous pouvez également configurer le seuil du taux d’erreur et la fenêtre de temps.

    Capture d’écran montrant comment configurer des critères de test lors de la création d’un test dans le portail Azure.