Commencez avec JMeter pour tester les performances de votre site Web
Publié: 2022-05-10Les sites Web lents et peu performants n'attireront jamais d'audience. Au-delà de cela, bien que votre site Web puisse fonctionner à une vitesse fulgurante pendant les tests, savez-vous comment il se comportera en cas d'augmentation soudaine du trafic ? Ou si votre entreprise a connu une poussée de croissance qui nécessite des intégrations et des fonctionnalités supplémentaires ?
Ce que vous recherchez, c'est un moyen de tester les performances de votre site Web dans divers scénarios. Et c'est là qu'interviennent les tests de performances. L'objectif principal des tests de performances est de s'assurer que les performances du site Web sont conformes aux attentes avant sa mise sur le marché. Il permet de tester la vitesse, la fiabilité, le temps de réponse et l'utilisation des ressources. Un fantastique outil open source pour tous ces tests de performance est JMeter. Examinez plus en profondeur JMeter et découvrez comment vous pouvez implémenter un test dans cet article.

Pourquoi tester les performances
L'objectif des tests de performances n'est pas de trouver des bogues mais d'éliminer les problèmes de performances. Sans effectuer de tests de performances approfondis, le site Web peut souffrir de problèmes tels qu'un fonctionnement lent lorsque plusieurs utilisateurs l'utilisent simultanément, ou une mauvaise convivialité. L'une des raisons les plus importantes pour les tests de performance est d'éviter les temps d'arrêt.
Saviez-vous qu'environ 59 % des entreprises Fortune 500 connaissent environ 1,6 heure d'indisponibilité chaque semaine ? Un temps d'arrêt de 5 minutes en 2013 a coûté à Google.com la modique somme de 545 000 $ ! Une panne de service Web inattendue a coûté à Amazon une perte de 1100 $ par seconde. La source.
Tout cela peut être évité si un test de performance peut simuler une charge importante sur les serveurs, peut exécuter des tests fonctionnels, des tests d'application et des tests de protocole.
Tests de performances avec JMeter
L'application Apache JMeter est un logiciel open source, une application purement basée sur Java, conçue pour tester des tests de charge ou de performance. Il a d'abord été conçu par Stefano Mazzocchi de l'Apache Software Foundation. JMeter peut simuler une lourde charge sur un serveur en créant des tonnes d'utilisateurs virtuels simultanés sur le serveur Web.
Comment JMeter effectue-t-il des tests
JMeter crée une requête et l'envoie au serveur. Une fois qu'il reçoit la demande du serveur, il les collecte et visualise ces détails dans un tableau ou un graphique. Ensuite, il traite la requête du serveur et génère enfin le résultat du test dans plusieurs formats tels que texte, XML, JSON. À partir des données recueillies, les utilisateurs peuvent observer le comportement et les goulots d'étranglement des performances de l'application, offrant ainsi un aperçu des domaines dans lesquels l'application doit être améliorée.
Pourquoi JMeter
- Open source - JMeter est un logiciel open source et peut être téléchargé gratuitement
- Indépendant de la plate-forme - JMeter est développé en Java, qui est le langage de programmation le plus populaire au monde. Par conséquent, il peut fonctionner sur n'importe quel système d'exploitation.
- Prise en charge multiprotocole - JMeter ne prend pas seulement en charge les tests d'applications Web, mais évalue également les performances du serveur de base de données. Tous les protocoles de base tels que HTTP, JDBC, LDAP, SOAP, JMS et FTP sont pris en charge par JMeter.
- Convivial - JMeter dispose d'une interface graphique complète, qui aide à créer des plans de test et à configurer les éléments. L'ajout d'éléments est également facile. Il vous suffit de faire un clic droit sur le plan de test et d'ajouter ce que vous devez faire.
Éléments de JMeter
- Groupe de threads - Le groupe de threads est une collection de threads. Chaque thread représente un utilisateur utilisant l'AUT. Chaque Thread imite une vraie demande d'utilisateur au serveur.
- Échantillonneurs - JMeter prend en charge les tests HTTP, FTP, JDBC et bien d'autres protocoles. Les groupes de threads simulent les demandes des utilisateurs au serveur. Cela aide le Thread Group à savoir quel type de requêtes (HTTP, FTP, etc.) il doit faire.
- Auditeurs - Les auditeurs permettent aux téléspectateurs de visualiser les résultats des échantillonneurs sous forme de tableaux, de graphiques, d'arbres ou de texte simple dans certains fichiers journaux.
- Configuration - Les éléments de configuration dans JMeter sont utilisés pour configurer ou modifier les requêtes d'échantillonneur adressées au serveur.
Comment installer jmeter
Il n'y a qu'un seul prérequis pour télécharger et installer JMeter : avoir Java installé sur votre système.

- Téléchargez JMeter et installez-le à partir d'ici - https://jmeter.apache.org/download_jmeter.cgi
- Pour lancer JMeter : dossier Apache jmeter > dossier bin > cliquez sur jmeter.bat
Créer un plan de test
Étape 1 : Ajouter un groupe de discussions
Allez dans ajouter, puis Threads (Utilisateurs) et sélectionnez Thread users.


Choix
A. Action à entreprendre après une erreur
B. Nombre de threads - Nombre d'utilisateurs
C. Période de montée en puissance en secondes - Intervalle de temps entre les hits des utilisateurs
D. Nombre de boucles - Combien de fois le test sera exécuté pour le nombre d'utilisateurs
Étape 2 : Ajouter une requête HTTP
Faites un clic droit sur le groupe Thread, ajoutez un sampler et cliquez sur Requête HTTP.
Choix
A. Ajouter "Nom du serveur"
B. Ne donnez pas http ou HTTPS puisque ce sont des protocoles qui viendront dans l'autre case et qui seront automatiquement pris en cas de requête http.
C. Boîte de dialogue Chemin → ajouter une barre oblique.

Étape 3 : Ajouter un écouteur
Faites un clic droit sur le groupe Thread , ajoutez un écouteur et cliquez sur Afficher le résultat dans le tableau.

Étape 4 : Exécution du test
Enregistrez le test et cliquez sur le bouton flèche verte.


Il est temps d'analyser le résultat
- Numéro d'échantillon - Le no. de threads ou d'utilisateurs. Dans le rapport, il sera mentionné que "ceci est l'échantillon numéro 1", ce qui signifie qu'il s'agit du fil 1, puis du fil numéro 2 et ainsi de suite.
- Heure de début - Heure de début pour chaque thread ou utilisateur
- Nom du thread - Le nom du thread est essentiellement le nom du groupe de threads ici. Dans le nom du groupe de threads, nous avons ce numéro 1-1 , 1-2… donc ce premier signifie première itération avec le premier utilisateur , première itération avec le deuxième utilisateur et ainsi de suite.
- Label - Label est le nom de votre échantillon ou de votre demande.
- Temps d' échantillonnage - Combien de temps cet échantillon (étiquette) a pris en termes de am/s.
- Statut - Statut de la demande.
- Octets - Octets reçus
- Octets envoyés - Octets qui ont été envoyés
- Latence - Une demande de temps de l'utilisateur/navigateur et le temps de réponse. Réponse en termes de requête voyagée du serveur au client/navigateur qui n'inclut pas le temps de traitement du serveur. (temps de demande et de réponse uniquement)
- Temps de connexion - Le temps de connexion est le temps qu'il a fallu à votre application pour se connecter au serveur en millisecondes.
Il est important de savoir que la latence et le temps de connexion doivent toujours être faibles. Un temps de connexion ou une latence plus élevé implique qu'il y a un problème avec les performances du site Web.