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

Effectué

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

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.

Pour créer une ressource de test de charge à l’aide de l’interface CLI :

  1. Se connecter à Azure :

    az login
    
  2. Définir les valeurs de paramètres :

    Les valeurs ci-dessous sont utilisées dans les commandes suivantes pour créer la ressource de test de charge.

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

    az group create -n $resourceGroup -l $location
    
  4. Créez une ressource de test de charge Azure avec la commande azure load create :

    az load create --name $loadTestResource --resource-group $resourceGroup --location $location
    
  5. Une fois la ressource créée, vous pouvez voir les détails à l’aide de la commande azure load show :

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

Créer un test de charge

Il existe deux options pour créer un test de charge dans le Portail Azure :

  • Test basé sur une URL
  • Script de test JMeter (JMX)

Dans cette unité, nous nous concentrons sur la création d’un test à l’aide d’un script JMeter.

Composants d’un plan de test

Plan de test

Le plan de test contient tous les fichiers nécessaires à l’exécution de votre test de charge. Au minimum, le plan de test doit contenir un script JMeter *.jmx. Le test de charge Azure ne prend en charge qu’un seul 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. Accédez au plan de test.

  2. Sélectionnez tous les fichiers de votre ordinateur local et chargez-les sur 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 des fichiers de données ou de configuration, veillez à supprimer les noms de chemin d’accès relatifs dans le fichier JMX.

  3. Si votre test utilise des données d’entrée CSV, vous pouvez choisir d’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 volumineux contenant des clients et que le test de charge s’exécute sur 10 moteurs de test parallèles, chaque instance traite 1/10e 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, le modifier, puis charger à nouveau le fichier.

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. Spécifiez des paires clé-valeur dans la configuration du test de charge et référencez la valeur dans le script JMeter à l’aide du nom du paramètre.

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

  1. Spécifiez 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. Ajoutez des références aux secrets, soutenues par Azure Key Vault.

    Utilisez des secrets pour transmettre des paramètres sensibles, tels que des mots de passe ou des jetons d’authentification, au script de test. Vous stockez les valeurs des secrets dans votre coffre de clés Azure et ajoutez une référence à la clé dans la configuration du test de charge. Vous pouvez ensuite référencer la clé dans votre script à l’aide du nom du paramètre. Test de charge Azure récupère ensuite la valeur de clé d’Azure Key Vault.

  3. Ajoutez des références aux certificats clients, soutenues par Azure Key Vault.

    Si vous testez des points de terminaison d’application qui utilisent l’authentification basée sur des certificats, vous pouvez ajouter les certificats à votre coffre de clés Azure et ajouter une référence au certificat dans la configuration de test de charge. Test de charge Azure injecte automatiquement les certificats dans les requêtes web dans votre script JMeter.

  4. Sélectionnez l’identité managée utilisée pour accéder à votre coffre de clés pour les secrets ou les certificats.

Charge

  1. Spécifiez le nombre d’instances de moteur de test.

    Test de charge Azure met automatiquement à l’échelle votre test de charge sur toutes les instances. Le script de test JMeter est exécuté en parallèle sur toutes les instances. 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. Configurez une connectivité de réseau virtuel.

    Vous pouvez connecter votre test de charge à un réseau virtuel Azure pour les tests de charge hébergés en privé ou locaux.

    Pour vous connecter à un réseau virtuel, sélectionnez le mode traficprivé, puis sélectionnez 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

  1. Spécifiez les critères d’échec de test en fonction des métriques du client.

    Lorsque le test de charge dépasse le seuil d’une métrique, le test de charge obtient l’état d’échec. 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, pour vérifier que le temps de réponse de la page d’accueil ne dépasse pas un temps de réponse spécifique.

  2. Configurez les 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é et configurer le seuil spécifique 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.