26. Enregistreur de script de test Apache JMeter HTTP(S)

Ce didacticiel tente d'expliquer les étapes exactes de l'enregistrement HTTP/HTTPS. Pour ceux qui découvrent JMeter, un moyen simple de créer un plan de test consiste à utiliser l'enregistreur.

26.1 Configuration de JMeter

Depuis JMeter 2.10, l'enregistrement a été amélioré pour mieux gérer les ressources embarquées et la création de certificats à la volée. Pour activer ces fonctionnalités, JMeter utilise l'utilitaire keytool (disponible dans JRE/JDK). Vous devez donc vous assurer que votre configuration est correcte. Lisez cette page wiki avant de commencer.

26.2 Instructions de base

  1. Accédez à JMETER_HOME/bin et démarrez JMeter avec jmeterw.bat sous Windows et jmeter.sh sous Linux/Unix
  2. Sélectionnez Modèles… dans la barre de menus
  3. Sélectionnez Modèle d'enregistrement dans la liste
  4. Un plan de test complet est généré
  5. Dans l' élément HTTP Request Defaults :
    Nom du serveur ou IP
    entrez example.com
    Chemin
    laisser vide
  6. Revenez à HTTP(S) Test Script Recorder et cliquez sur le bouton Démarrer en haut.

Cela démarrera le serveur proxy JMeter qui est utilisé pour intercepter les requêtes du navigateur. Un fichier appelé ApacheJMeterTemporaryRootCA.crt sera généré dans le dossier JMETER_HOME/bin . Installez ce certificat dans votre navigateur, si vous ne savez pas comment faire, lisez Installer le certificat JMeter CA pour l'enregistrement HTTPS

26.3 Configurer votre navigateur pour utiliser le proxy JMeter

À ce stade, le proxy de JMeter est en cours d'exécution. Pour cet exercice, nous utiliserons Iceweasel/Firefox pour afficher certaines pages du site Web JMeter.

  1. Démarrez Iceweasel/Firefox, mais ne fermez pas JMeter.
  2. Dans la barre d'outils, cliquez sur Édition  →  Préférences (ou Outils  →  Préférences ou tapez about:preferences#advanced comme URL). Cela devrait faire apparaître les options.
  3. Sélectionnez l' onglet Avancé et l' onglet Réseau
  4. Cliquez sur le bouton Paramètres en haut.
  5. Dans la nouvelle fenêtre contextuelle, cochez Configuration manuelle du proxy . Les champs d'adresse et de port doivent maintenant être activés.
    Adresse
    entrez localhost ou l'adresse IP de votre système
    Port
    entrez 8888 .
  6. Cochez Utiliser ce serveur proxy pour tous les protocoles
  7. Cliquez sur le bouton OK . Cela devrait vous renvoyer au navigateur
  1. Avec votre navigateur, dans la barre d' adresse en haut, entrez http://example.com/index.html (remplacez example.com par l'adresse de votre site Web). et appuyez sur la touche entrée .
  2. Cliquez sur quelques liens sur les pages de votre site.
  3. Fermez votre navigateur et ouvrez la fenêtre JMeter.

Développez le groupe de threads et il devrait y avoir plusieurs échantillonneurs. À ce stade, le plan de test peut être enregistré tel quel.

Si vous oubliez d'ajouter les paramètres de requête HTTP par défaut, vous devrez supprimer manuellement le nom du serveur et le port.

Dans cet exemple, il n'y a pas de paramètres de requête par défaut. Si un paramètre de requête particulier est requis par toutes les pages, la requête par défaut est l'endroit où l'on ajouterait les entrées.

  1. Sélectionnez Groupe de threads et modifiez quelques valeurs par défaut :
    Nombre de fils (utilisateurs)
    entrez 5
    Période de montée en puissance (en secondes)
    ne changez pas
    Nombre de boucles
    entrez 100

26.5 Valider le script

Nous devons maintenant valider le script avant d'exécuter notre plan de test. Enregistrez le plan de test.

Faites un clic droit sur le groupe de threads Valider

Vérifiez avec l'élément View Results Tree si tout va bien.

26.6 Variabiliser et corréler le script

Dans certains scripts, nous devrons :

  • Variabiliser certaines saisies (login, mot de passe, mots de recherche, …)
  • Corréler certaines données (variable de session, …) entre deux requêtes

Pour variabiliser, on peut utiliser :

  • CSV Data Set Config pour obtenir les données d'entrée du fichier csv
  • JMeter fonctionne comme __counter , __time , …
  • etc.

Pour corréler, nous pouvons récupérer les données d'une requête avec des post-processeurs comme JSON Extractor , Regular Expression Extractor , … et les injecter dans une autre requête.

Pour trouver des données à corréler, le moyen le plus simple consiste à utiliser la fonction Rechercher dans Afficher l'arborescence des résultats .

26.7 Démarrer le test

À ce stade, nous sommes prêts à exécuter notre plan de test et à voir ce qui se passe. Lorsque vous êtes prêt à exécuter le test, vous pouvez procéder de deux manières :

  1. Avec l'interface graphique, mais il n'est pas recommandé de faire de gros tests de charge.
  2. Avec la ligne de commande.

Solution 1, avec l'interface graphique, mais uniquement pendant la phase de débogage, utilisez le mode CLI (non GUI) pour votre test de charge.

Exécuter  →  Démarrer ou utiliser le clavier et appuyer sur Ctrl  +  R

Avant de commencer le test, ajoutez un élément Rapport de synthèse et sélectionnez-le. Au fur et à mesure que le test s'exécute, les statistiques changent jusqu'à ce que le test soit terminé. À la fin du test, le rapport de synthèse devrait ressembler à ceci.

Pendant que le test est en cours, dans le coin supérieur droit, il devrait y avoir un cercle vert. Lorsque le test est terminé, le cercle doit être gris.

Solution 2, en ligne de commande, utilisez jmeter -n -t [fichier jmx] -l [fichier de résultats] -e -o [Chemin d'accès au dossier de sortie]

A la fin du test, un rapport HTML sera généré et disponible dans [Chemin du dossier de sortie] utilisé en ligne de commande.

Go to top