JMeter est un outil Java utilisé pour réaliser des tests de performances.
Il est notamment possible de simuler des requêtes HTTP simultanées, de réaliser des accès base de données (stress test, multiples connexions) etc.
Les temps de réponses sont ensuite mesurés et renvoyés de diverses manières (CSV, graphique, tableau).
Ces plans de tests peuvent être lancés en ligne de commande et intégrer à un Pipeline Jenkins.
Fonctionnalités
- Test de performance
- Test de robustesse : simulation de trafic pour vérifier la robustesse selon le niveau de trafic
- Test de rupture
- Réalisation de résultats statistiques sous plusieurs formes graphiques et textuelles
Récepteurs / Listener
Acquisition et affichage des résultats des tests.
Protocoles
HTTP, SOAP, LDAP, FTP…
Construire son test
- ajouter un thread group (défini le nombre de user que l’on veut simuler)
- ajouter des tests HTTP, MySQL (groupé par transaction ou pas)
- ajouter des assertions
- ajouter des listener pour stocker ou/et rendre les résultats
Tests MySQL/MariaDB
Il est nécessaire d’ajouter les JDBC dans le dossier apache-jmeter-4.0/lib/
Exemple de plan de tests
Exécuter le plan de tests en ligne de commande
/home/louis/Logiciels/apache-jmeter-4.0/bin/jmeter -n -t /home/louis/JMeter/MyApp.jmx -l
/home/louis/JMeter/results-myapp.csv -e -o /home/louis/JMeter/web-myapp/
- bin jmeter
- n = non-gui mode
- t jmx = fichier du Test Plan créé avec JMeter
- l csv = résultats des tests
- o web = rendu HTML des résultats