Une application Java Open Source conçue pour mesurer les performances et tester la charge des applications.
Par la Fondation Apache Software
Apache JMeter peut mesurer les performances et tester la charge des applications Web statiques et dynamiques.
Il peut être utilisé pour simuler une charge importante sur un serveur, un groupe de serveurs, un réseau ou un objet afin de tester sa résistance ou d'analyser les performances globales sous différents types de charge.
Portabilité complète et 100% Java.
Le multithreading permet un échantillonnage simultané par de nombreux threads et un échantillonnage simultané de différentes fonctions par des groupes de threads distincts.
Possibilité de charger et de tester les performances de nombreux types d'applications/serveurs/protocoles :
IDE de test complet qui permet un enregistrement rapide du plan de test (à partir de navigateurs ou d'applications natives), la création et le débogage .
Mode ligne de commande (mode sans interface graphique / sans tête) pour charger des tests depuis n'importe quel système d'exploitation compatible Java (Linux, Windows, Mac OSX, ...)
Un rapport HTML dynamique complet et prêt à présenter
Rapports en direct dans des bases de données tierces comme InfluxDB ou Graphite
Corrélation facile grâce à la possibilité d'extraire des données à partir des formats de réponse les plus courants, HTML, JSON, XML ou tout autre format textuel
Les détails de la dernière version sont disponibles sur le site Web du projet JMeter Apache.
Les exigences suivantes existent pour exécuter Apache JMeter :
Interpréteur Java :
Un environnement d'exécution Java 17 entièrement conforme est requis pour l'exécution d'Apache JMeter. Un JDK avec l'utilitaire keytool
est mieux adapté à l'enregistrement de sites Web HTTPS.
Pots en option :
Certains pots ne sont pas inclus avec JMeter. Si nécessaire, ceux-ci doivent être téléchargés et placés dans le répertoire lib
Compilateur Java ( FACULTATIF ) :
Un compilateur Java n'est pas nécessaire puisque la distribution inclut une archive binaire Java précompilée.
Notez qu'un compilateur est requis pour créer des plugins pour Apache JMeter.
Notez que les espaces dans les noms de répertoires peuvent causer des problèmes.
Versions de publication
Décompressez l'archive binaire dans une structure de répertoires appropriée.
bin
jmeter
(Un*x) ou jmeter.bat
(Windows).Pour Windows, il existe également d'autres scripts sur lesquels vous pouvez glisser-déposer un fichier JMX :
jmeter-n.cmd
- exécute le fichier en tant que test non graphiquejmeter-nr.cmd
- exécute le fichier en tant que test distant (client-serveur) sans interface graphiquejmeter-t.cmd
- charge le fichier prêt à l'exécuter en tant que test GUI La documentation disponible à la date de cette version est également incluse, au format HTML, dans le répertoire printable_docs, et elle peut être parcourue à partir du fichier appelé index.html.
Voir Suivi des problèmes.
Décompressez l'archive source dans une structure de répertoires appropriée. La plupart des fichiers de bibliothèques tierces peuvent être extraits de l'archive binaire en la décompressant dans la même structure de répertoires.
Tous les fichiers jar facultatifs (voir ci-dessus) doivent être placés dans lib/opt
et/ou lib
.
Les fichiers jar dans lib/opt
seront utilisés pour créer JMeter et exécuter les tests unitaires, mais ne seront pas utilisés au moment de l'exécution.
Ceci est utile pour tester ce qui se passe si les fichiers jar facultatifs ne sont pas téléchargés par d'autres utilisateurs de JMeter.
Si vous êtes derrière un proxy, vous pouvez définir quelques propriétés de construction dans ~/.gradle/gradle.properties
pour que Gradle utilise le proxy :
systemProp.http.proxyHost =proxy.example.invalid
systemProp.http.proxyPort =8080
systemProp.http.proxyUser =your_user_name
systemProp.http.proxyPassword =your_password
systemProp.https.proxyHost =proxy.example.invalid
systemProp.https.proxyPort =8080
systemProp.https.proxyUser =your_user_name
systemProp.https.proxyPassword =your_password
JMeter est construit à l'aide de Gradle et utilise les chaînes d'outils de Gradle pour les projets JVM pour le provisionnement des JDK. Cela signifie que le code recherchera les JDK nécessaires localement ou les téléchargera s'ils ne sont pas trouvés.
Par défaut, le code utiliserait JDK 17 à des fins de construction, mais il définirait la version cible sur 8, de sorte que les artefacts résultants seraient compatibles avec Java 8.
La commande suivante construit et teste JMeter :
./gradlew build
Si vous souhaitez utiliser un JDK personnalisé pour la construction, vous pouvez définir -PjdkBuildVersion=11
et vous pouvez sélectionner -PjdkTestVersion=21
si vous souhaitez utiliser un autre JDK pour les tests.
Vous pouvez lister les paramètres de construction disponibles en exécutant
./gradlew parameters
Si le système ne dispose pas d'un affichage GUI, alors :
./gradlew build -Djava.awt.headless=true
Les artefacts de sortie (jars, rapports) sont placés dans le dossier build
. Par exemple, les artefacts binaires peuvent être trouvés sous src/dist/build/distributions
.
La commande suivante compilerait l'application et vous permettrait d'exécuter jmeter
à partir du répertoire bin
.
Notez qu'il actualise complètement le contenu
lib/
, il supprimera donc les plugins personnalisés si vous les avez installés surlib/
. Cependant, cela garderait les pluginslib/ext/
intacts.
./gradlew createDist
Alternativement, vous pouvez demander à Gradle de démarrer l'interface graphique :
./gradlew runGui
La construction et la contribution sont expliquées en détail dans la construction de JMeter et CONTRIBUTING.md. Plus d'informations sur les tâches disponibles pour créer JMeter avec Gradle sont disponibles dans gradle.md.
Le code peut être obtenu auprès de :
Pour obtenir des informations juridiques et de licence, veuillez consulter les fichiers suivants :
Cette distribution peut inclure des logiciels conçus pour être utilisés avec des logiciels cryptographiques. Le pays dans lequel vous résidez actuellement peut avoir des restrictions sur l'importation, la possession, l'utilisation et/ou la réexportation vers un autre pays de logiciels de cryptage. AVANT d'utiliser un logiciel de cryptage, veuillez vérifier les lois, réglementations et politiques de votre pays concernant l'importation, la possession ou l'utilisation et la réexportation de logiciels de cryptage, pour voir si cela est autorisé. Voir https://www.wassenaar.org/ pour plus d'informations.
Le Département du Commerce du gouvernement américain, Bureau of Industry and Security (BIS), a classé ce logiciel sous le numéro ECCN (Export Commodity Control Number) 5D002.C.1, qui inclut un logiciel de sécurité des informations utilisant ou exécutant des fonctions cryptographiques avec des algorithmes asymétriques. La forme et les modalités de cette distribution d'Apache Software Foundation la rendent éligible à l'exportation dans le cadre de l'exception de licence ENC Technology Software Unrestricted (TSU) (voir les réglementations administratives sur l'exportation du BIS, section 740.13) pour le code objet et le code source.
Ce qui suit fournit plus de détails sur les logiciels inclus qui peuvent être soumis à des contrôles d'exportation sur les logiciels cryptographiques :
Apache JMeter s'interface avec l'API Java Secure Socket Extension (JSSE) pour fournir
Apache JMeter s'interface (via Apache HttpClient4) avec l'API Java Cryptography Extension (JCE) pour fournir
Apache JMeter n'inclut aucune implémentation de JSSE ou JCE.
Merci d'utiliser Apache JMeter.
Avis pour mxparser :
Ce produit comprend un logiciel développé par l'Indiana University Extreme ! Laboratoire. Pour plus d'informations, veuillez visiter http://www.extreme.indiana.edu/