[ad_1]
Apache Jmeter est un outil de tests de serveur permettant de simuler le comportement d’utilisateurs sur vos sites. Assez pratique lorsqu’on veut tester un site pour l’arrivée d’un événement qui augmentera fortement le trafic ( exemple : un site e-commerce avec les soldes). C’est un outil open source développer par la Fondation apache.
Première utilisation de JMeter
Je suis loin d’être un expert de JMeter et des tests de monter en charges alors je vais vous montrer étapes par étapes une première utilisation basique d’Apache JMeter et de ce que j’ai compris, n’hésitez pas à laisser un message si vous avez des questions ou et des remarques. On va commencer par faire un clic droit sur Plan de test -> Moteurs d’utilisateurs -> Groupe d’unités pour ajouter un groupe d’unités, vous allez obtenir le résultat suivant sur votre écran.
Action à suivre après une erreur d’échantillon
C’est l’action qui suivra s’il y a une erreur durant votre test, on continue, on démarre une nouvelle itération, on arrête l’unité ou le test, … Par défaut on va garder « Démarrer itération suivante« , c’est-à-dire qu’il va refaire depuis le début vos étapes.
Propriétés du groupe d’unités
Vous avez ensuite les propriétés de votre groupe d’unités, le nombre d’unités ( qui représente le nombre d’utilisateur ) qui se connecteront à votre site, la durée de la montée en charge c’est l’équivalent du nombre en seconde pour chaque utilisateur, si j’ai 100 utilisateurs et que j’ai spécifiés 10 secondes pour la durée de la montée alors j’aurai 10 utilisateurs par seconde qui se connecteront à mon site. Pour finir, nous avons le nombre d’itérations c’est le nombre d’itérations que fera chaque unité (utilisateur), si je mets 2, une unité va faire deux fois le scénario.
Configuration du programmateur
Vous l’aurez sans doute déjà compris, c’est pour spécifier un délai ou une date pour le lancement de votre test. Jusqu’à présent, rien de bien compliqué.
Configurer par défaut nos requêtes HTTP
Pour cela, il faudra faire Plan de test -> Groupe d’unités -> Configurations -> Paramètres HTTP par défaut, ce n’est pas obligatoire mais ça vous permettra de configurer un premier nom de domaine pour éviter de l’écrire plusieurs fois pour chacune des requêtes à ajouter dans le groupe d’unités, dans cet exemple j’ai mis mon blog.
Noter que durant le test, JMeter ne prend pas en compte vos ressources ( css, js, images, etc.. ), pour le faire, vous pouvez les inclures en allant dans Avancée, et cliquer sur Récupérer les ressources incluses, attention toute de même, l’exécution de votre test sera beaucoup plus.
Ajouter une requête HTTP
Vous allez maintenant pouvoir ajouter une requête HTTP en faisant Plan de test -> Groupe d’unités -> Echantillons -> Requêtes HTTP, là encore vous avez beaucoup d’informations mais si vous prenez le temps d’analyser, vous allez très rapidement comprendre, dans le chemin de votre requête vous allez spécifier le chemin en relatif à condition d’avoir bien spécifié votre site dans vos paramètres HTTP par défaut.
Le compteur de temps fixe permet juste d’indiquer une pause durant lequel votre utilisateur fictif attendra ( en effet, idéalement un visiteur reste plus de 1 seconde sur une page ).
Enregistrer automatiquement un scénario avec un Proxy
Vous pouvez enregistrer un scénario et le reproduire en paramétrant jMetter pour enregistrer un comportement sur un site et le reproduire pour réaliser des tests, cela évite de devoir écrire un scénario manuellement.
Pour ce faire, vous devez régler jMeter comme proxy en faisant Plan de travail -> Éléments hors test ->Enregistreur de script de test HTTP(S). N’oubliez pas de lancer l’enregistreur et de régler votre navigateur web dans les paramètres du proxy.
Ensuite, toujours dans le plan de travail, vous allez ajouter un Récepteur -> Arbre de résultat afin d’afficher les données et de pouvoir analyser vos tests.
Conclusion
J’ai découvert Apache JMeter dans un cour, et je l’ai trouvé sa très intéressant pour pouvoir tester des applications web vis-à-vis du serveur et constater s’il y a certaines requêtes qui demandent trop de charge au serveur. Attention, pour avoir des tests plus proches de la réalité il faut prévoir plusieurs serveurs et installer un agent JMeter dessus afin de commander et simuler à distance des visiteurs sur votre site, vous aurez des résultats plus intéressants à analyser et plus proche de la réalité. JMeter est très complet et si l’occasion se présente je pense écrire un nouvel article plus complet à son sujet.
···
[ad_2]