Scénarios de tests de charge avec JMeter

Créer des scénarios de test de charge avec JMeter

Un test de montée en charge des applications WEB consiste à solliciter un site Internet en lui appliquant un certain nombre de requêtes automatisées appelés scénarios de test de charge .
Cela permet d’observer le comportement de l’application WEB au delà de l’audience normale.

Pour réaliser des tests de charge, il existe un outil Open Source et gratuit : JMeter.

Voici quelques astuces vous permettant de créer facilement des scénarios de test de charge avec JMeter.

Le proxy HTTP pour créer vos scénarios de test de charge

Un proxy HTTP est inclus dans l’outil JMeter et permet de simplifier l’écriture des scénarios de test de charge avec JMeter. En effet, c’est un proxy un peu spécial qui est capable d’enregistrer toutes les requêtes qui passent par lui et qui les ajoute au scénario en cours d’édition.

scénarios de test de charge avec JMeter
Jmeter : outils libre puissant pour la réalisation de test de charge avec scénarios de navigation

Le principe est très simple :

  • configuration et lancement du proxy HTTP dans JMeter
  • configuration du navigateur Web pour utiliser ce proxy HTTP
  • déroulement d’une suite d’actions sur le site Web pour lequel on souhaite réaliser le test de charge
  • récupération et utilisation des éléments qui ont été ajoutés au scénario en cours

Ce proxy écoute par défaut sur le port 8080 sur la machine locale et intercepte à la volée les URLs, les en-têtes HTTP, les paramètres POST et GET, etc.

Pour ajouter ce proxy à un scénario en cours d’élaboration, il faut réaliser les actions suivantes :

  • Cliquer-droit sur Plan de travail > Ajouter > Eléments hors test > Enregistreur script de test HTTP(S)
  • Configurer le port d’écoute (8080 par défaut)
  • Ajouter des motifs d’URL à inclure (par défaut tout est capturé)
  • Ajouter des motifs d’URL à exclure (par défaut rien n’est exclu)
  • Cliquer sur Lancer

gestion des pics d'activités d'un site e-commerce - Syloé

Les sources de données

Les sources de données permettent de disposer d’un jeu de données à utiliser dans les scénarios. Il peut s’agir d’un jeu de couples login/password qui serviront à se connecter à l’application pour simuler une utilisation multi-utilisateurs, de données brutes à injecter dans des formulaires, etc.

Ces données peuvent provenir de fichiers CSV ou d’une base de données.

Il est ensuite possible de d’utiliser ces données de manière itérative ou aléatoire.

Pour ajouter une source de données à un scénario, il faut réaliser les actions suivantes :

  • Cliquer-droit sur Plan de test > Ajouter > Configurations > Source de données CSV
  • Renseigner le nom de fichier CSV contenant les données à utiliser (ex.: LOGIN, PASSWORD)
  • Définir un nom de variable correspondant à chaque colonne du fichier CSV
  • Indiquer le délimiteur de colonnes du fichier CSV
  • Utiliser les variables dans des échantillons (ex.: ${LOGIN} ou ${PASSWORD})

Les compteurs de temps

Les compteurs de temps permettent d’insérer des pauses entre deux échantillons d’un scénario. Cela permet de simuler au mieux le comportement réel d’un utilisateur et éviter de dérouler le scénario à tout allure.

Il en existe de plusieurs types, notamment des compteurs de temps fixe (durée prédéterminée) et des compteurs de temps aléatoire (durée aléatoire paramétrable).

Par exemple, pour mettre en place une pause de durée aléatoire, il faut réaliser les actions suivantes :

  • Cliquer-droit sur Plan de test > Ajouter > Echantillons > Action test
  • Cliquer-droit sur l’élément Action test que l’on vient de créer > Ajouter > Compteur de temps aléatoire uniforme
  • Configurer le Délai de décalage constant (durée arbitraire)
  • Configurer la Déviation aléatoire maximum (durée aléatoire maximum venant s’appliquer en plus ou en moins par rapport au délai constant paramétré au dessus)

Se perfectionner dans la créations de scénarios de tests de charge

6 réflexions au sujet de « Créer des scénarios de test de charge avec JMeter »

  1. Les informations ici présentes sont relativement pertinentes et intéressantes. J’ai beaucoup aimé, cet article est vraiment bien ficelé et cela nous permet d’y comprendre un peu plus car le sujet est moins évident qu’il n’y semble.
    Elsa Bastien

  2. Bonjour, je recherche un candidat qui détient les compétences dans les plans scénairos de test. Où me conseillez-vous d’afficher mon poste?

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *