Créer et gérer des tests dans Azure Load Testing

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

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.

Créer un test

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

  • Créez un test rapide à l’aide d’une URL d’application web (test basé sur l’URL).
  • Créer un test en chargeant un script de test JMeter (JMX).

Screenshot that shows the options to create a new test in the Azure portal.

Créer un test rapide à l’aide d’une URL

Pour tester un point de terminaison HTTP unique, vous pouvez utiliser l’expérience de test rapide dans l’Portail Azure, également appelée test de charge basé sur l’URL. Créez un test de charge sans connaissance préalable des scripts JMeter en entrant l’URL cible et les paramètres de charge de base.

Lorsque vous créez un test rapide, Azure Load Testing génère le script JMeter correspondant, détermine la configuration du test de charge et exécute le test de charge.

Pour spécifier la charge cible, choisissez parmi deux options. Pour chaque option, vous pouvez ensuite entrer différents paramètres pour définir le chargement de l’application.

Type de charge Description Paramètres de chargement
Utilisateurs virtuels Le test de charge simule le nombre cible d’utilisateurs virtuels. La cible est atteinte par incréments pendant le temps d’accélération. Azure Load Testing configure le nombre total d’instances de moteur de test comme suit :
#instances = #virtual users / 250

Chaque instance de moteur de test simule ensuite (#total utilisateurs virtuels / moteurs #test) des utilisateurs virtuels.

Le nombre maximal d’utilisateurs virtuels pour un test rapide est de 11250.
- Nombre d’utilisateurs virtuels
- Durée de test en secondes
- Temps d’accélération en secondes
Demandes par seconde Le test de charge simule un nombre cible de requêtes par seconde (RPS), en fonction d’un temps de réponse de point de terminaison estimé.
Le test de charge Azure détermine le nombre total d’utilisateurs virtuels pour le test de charge en fonction du temps de réponse et du rps :
#virtual users = (RPS * response time) / 1000

Le service configure ensuite le nombre d’instances de moteur de test et d’utilisateurs virtuels par instance en fonction du nombre total d’utilisateurs virtuels.
- Demandes par seconde
- Temps de réponse en millisecondes
- Durée de test en secondes
- Temps d’accélération en secondes

Pour créer un test rapide dans le Portail Azure :

  1. Dans le Portail Azure, accédez à votre ressource de test de charge.

  2. Sélectionnez Test rapide dans la page Vue d’ensemble .

    Vous pouvez également sélectionner Tests dans le volet gauche, + Créer, puis Créer un test rapide.

  3. Entrez l’URL cible et les paramètres de chargement.

    Screenshot that shows the page for creating a quick test in the Azure portal.

  4. Sélectionnez Exécuter le test pour démarrer le test de charge.

    Le test de charge Azure génère automatiquement un script de test JMeter et configure votre test pour qu’il effectue une mise à l’échelle sur plusieurs moteurs de test, en fonction de vos paramètres de charge.

Après avoir exécuté un test rapide, vous pouvez modifier davantage la configuration du test de charge. Par exemple, vous pouvez ajouter des composants d’application pour surveiller les métriques côté serveur, configurer une charge à grande échelle ou modifier le script JMeter généré.

Créer un test en utilisant un script JMeter

Pour réutiliser un script de test JMeter existant ou pour des scénarios de test plus avancés, créez un test en chargeant un fichier JMX. Par exemple, pour lire des données à partir d’un fichier d’entrée CSV ou pour configurer les propriétés utilisateur JMeter. Pour plus d’informations, consultez Créer un test de charge à l’aide d’un script JMeter existant.

Si vous n’êtes pas familiarisé avec la création d’un script JMeter, consultez Prise en main d’Apache JMeter.

  1. Dans le Portail Azure, accédez à votre ressource de test de charge.

  2. Sélectionnez Créer dans la page Vue d’ensemble.

    Vous pouvez également sélectionner Tests dans le volet gauche, + Créer, puis Charger un script JMeter.

  3. Dans la page Informations de base , entrez les informations de test de base.

    Si vous sélectionnez Exécuter le test après la création, le test démarre automatiquement. Vous pouvez démarrer votre test manuellement à tout moment, après l’avoir créé.

    Screenshot that shows the page for creating a test with a J Meter script in the Azure portal.

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.

    Screenshot that shows the test plan page for creating a test in the Azure portal, highlighting the upload functionality.

    Azure Load Testing 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, 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 divisé 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 1/10e des clients. En savoir plus sur la lecture d’un fichier CSV dans votre test de charge.

    Screenshot that shows the checkbox to enable splitting input C S V files when configuring a test in the Azure portal.

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 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. Pour plus d’informations, consultez Paramétriser un test de charge avec des secrets et des variables d’environnement.

Screenshot that shows how to configure parameters when creating a test in the Azure portal.

  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. En savoir plus sur l’utilisation de variables d’environnement dans un test de charge.

  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 de secret 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. Azure Load Testing récupère ensuite la valeur de clé d’Azure Key Vault.

    En savoir plus sur l’utilisation des secrets dans un test de charge.

  3. Ajoutez des références aux certificats clients, sauvegardées 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. Azure Load Testing injecte automatiquement les certificats dans les requêtes web dans votre script JMeter.

    En savoir plus sur l’utilisation de l’authentification basée sur des certificats avec Azure Load Testing.

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

    En savoir plus sur l’utilisation d’identités managées avec azure Load Testing.

Charge

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

    Azure Load Testing 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, multiples par le nombre d’instances de moteur de test. Pour plus d’informations, consultez Configurer un test pour une charge à grande échelle.

  2. Configurez la 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. En savoir plus sur les scénarios de déploiement d’Azure Load Testing dans un réseau virtuel.

    Pour vous connecter à un réseau virtuel, sélectionnez le mode trafic privé, puis sélectionnez le réseau virtuel et le sous-réseau.

Screenshot that shows how to configure the number of test engine instances when creating a test in the Azure portal.

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. Azure Load Testing 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’erreur

    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. Pour plus d’informations, consultez Configurer les critères d’échec de test.

  2. Configurez les critères d’arrêt automatique.

    Le test de charge Azure peut arrêter automatiquement une exécution de 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 et la fenêtre de temps spécifiques du taux d’erreur. En savoir plus sur la configuration des critères d’arrêt automatique.

Screenshot that shows how to configure test criteria when creating a test in the Azure portal.

Surveillance

Pour les applications hébergées par Azure, ajoutez des composants d’application Azure à surveiller pendant l’exécution du test de charge. Azure Load Testing capture des métriques de ressources détaillées pour les composants d’application Azure sélectionnés. Utilisez ces métriques pour identifier les goulots d’étranglement potentiels des performances dans votre application.

Lorsque vous ajoutez un composant d’application, Azure Load Testing sélectionne automatiquement les métriques de ressources les plus pertinentes pour le composant. Vous pouvez ajouter ou supprimer des métriques de ressources pour chacun des composants d’application à tout moment.

Screenshot that shows how to configure the Azure app components to monitor when creating a test in the Azure portal.

Une fois le test de charge terminé, le tableau de bord des résultats du test affiche un graphique pour chacun des composants de l’application Azure et des métriques de ressources.

Screenshot that shows the test result dashboard in the Azure portal.

Pour plus d’informations, consultez Configurer la surveillance côté serveur.

Exécuter un test

Lorsque vous exécutez ou réexécutez un test de charge, Azure Load Testing utilise les paramètres de configuration de test de charge les plus récents pour créer une nouvelle exécution de test. Si vous modifiez une configuration de test et case activée le test d’exécution après l’application des modifications case activée box, le test de charge démarre automatiquement après l’enregistrement des modifications.

Pour exécuter un test de charge dans le Portail Azure :

  1. Dans le Portail Azure, accédez à votre ressource de test de charge.

  2. Sélectionnez Tests dans le volet gauche, puis accédez aux détails du test en sélectionnant le nom du test dans la liste.

  3. Sélectionnez Exécuter.

  4. Dans la page Exécuter , vous pouvez choisir d’entrer une description d’exécution de test et de remplacer les paramètres de test de charge.

Screenshot that shows the run load test page in the Azure portal, allowing an override of the test run description and test parameters.

  1. Sélectionnez Exécuter pour démarrer le test de charge.

    Le service crée une nouvelle exécution de test, avec la description que vous avez fournie.

Modifier un test

Lorsque vous modifiez les paramètres de configuration des tests de charge, ces paramètres sont utilisés pour les prochaines exécutions de test. Lorsque vous réexécutez une exécution de test précédente, les paramètres de l’exécution de test sont utilisés et non les paramètres mis à jour du test.

Pour modifier un test dans le Portail Azure :

  1. Dans le Portail Azure, accédez à votre ressource de test de charge.

  2. Sélectionnez Tests dans le volet gauche, puis sélectionnez un test dans la liste en case activée la zone de case activée correspondante.

  3. Sélectionnez Modifier pour mettre à jour les paramètres de configuration de test.

    Screenshot that shows how to select and edit a load test in the Azure portal.

    Vous pouvez également sélectionner le test dans la liste, puis configurer le>test.

  4. Sélectionnez Appliquer dans la page Modifier le test pour enregistrer les modifications.

    La prochaine fois que vous exécutez le test, les paramètres de configuration de test mis à jour sont utilisés.

Supprimer un test

Pour supprimer un test dans la Portail Azure :

  1. Dans le Portail Azure, accédez à votre ressource de test de charge.

  2. Sélectionnez Tests dans le volet gauche, puis sélectionnez un test dans la liste en case activée la zone de case activée correspondante.

  3. Sélectionnez Supprimer le test pour supprimer le test.

    Screenshot that shows how to select and delete a load test in the Azure portal.

    Vous pouvez également sélectionner le test dans la liste, puis sélectionner Supprimer le test dans la page de détails du test.

  4. Dans la page Supprimer le test , sélectionnez Supprimer pour confirmer la suppression du test.

Attention

Lorsque vous supprimez un test, toutes les exécutions de test, journaux, résultats et données de métriques sont également supprimées.

Étapes suivantes