Je suis nouveau dans l'outil JMeter. Quelqu'un peut-il m'aider à analyser le mieux possible les rapports JMeter?
Simplement la liste des liens que vous pouvez trouver utiles:
Graphes natifs:
Solutions open source gratuites pour les graphes automatisés:
Recettes avec développement personnalisé:
Solutions tierces:
Lors des tests de performance, il y a 3 tests indispensables, il doit toujours y avoir une ligne de base, un test de pointe et un test de résistance. Ces tests se rapportent les uns aux autres à cause de la loi de little. Le nombre moyen de clients à long terme dans un système stable L est égal au taux d'arrivée effectif moyen à long terme, λ, multiplié par le temps qu'un client passe dans le système, W; ou exprimé algébriquement: L = λW. .
Jmeter fournit déjà des moyens pour vérifier ces valeurs, le plugin standard fournit des tracés pour les temps de réponse, les hits et le débit. Il n'y a aucun moyen de dire directement combien d'utilisateurs étaient actifs sur le système, il ne s'agit pas des mêmes utilisateurs simultanés que des utilisateurs actifs. Les plugins sont suffisants pour produire les rapports, mais ils ne permettent pas de contrôler une grande partie de la présentation, je vais utiliser des tracés produits en python (ils ajoutent des étiquettes et ont un axe y).
Test de base: Ce cas est un cas particulier de la loi, dans ce cas les utilisateurs actifs sont constants et il en est un, alors:
Si l'application exécute le même morceau de code, le temps de réponse se stabilisera dans le temps, le taux d'arrivée sera également constant dans le temps.
Il existe un service qui ne fait rien d’attendre que d’attendre quelque temps:
Service de 2 secondes:} _ Le taux d'arrivée était de 1/2TPS.
Service en 3 secondes:} _ Le taux d'arrivée était de 1/3TPS.
Peak Test: Ce n'est pas un cas spécial, dans ce cas, chargez incrément jusqu'à ce qu'il dépasse le débit du système, car la charge est supérieure au débit, les temps de réponse augmentent. Pendant le test, le nombre de threads doit augmenter suffisamment rapidement pour pouvoir récupérer après des temps de réponse longs.
Cette fois, au lieu d’exécuter le pic, je vais insister sur le système avec plus de charge que ce qu’il est capable de gérer pendant tout le test. Pour contrôler le débit du service:
Les transactions actives sont celles qui ont quitté l'injecteur mais qui n'ont pas reçu de réponse, ce sont des transactions qui sont en attente quelque part dans le système.
Etant donné que les temps de réponse sont plus longs que les utilisateurs actifs, nous avons besoin de l'injecteur pour créer de nouveaux threads dès que de nouvelles connexions sont requises, la plupart des threads du pool seront occupés.
Taux d'arrivée 2TPS, 1 débit TPS:
Taux d'arrivée 4TPS, 1 débit TPS:
Taux d'arrivée 6TPS, débit 5 TPS:
À partir de la version 3.0, JMeter inclut un rapport HTML dynamique pouvant être généré à la fin d'un test de charge ou à partir d'un fichier de résultat.
Dans Word simple, si vous souhaitez analyser votre rapport JMeter ...
Commencez avec la CPU du serveur et RAM utilisation. Lorsque vous exécutez un test de performances sur votre serveur, voyez combien de CPU et RAM est utilisé par le test actuel.
Exécutez la commande suivante sur le serveur de site hébergé. cela créera un fichier journal d'utilisation du processeur.
while true; do
( echo "%CPU %MEM ARGS $(date)" &&
ps -e -o pcpu,pmem,args --sort=pcpu | cut -d" " -f1-5 |
tail ) >> ps.log
sleep 1
done
Voir le temps de réponse global, il ne doit pas dépasser les critères de temps de réponse attendus .. Voir l'image ci-dessous. Mon attente est que le temps de réponse ne devrait pas dépasser 525 microsecondes, mais certaines demandes le traversent. Trouvez ce genre de demandes qui prennent du temps.
Temps de réponse global:
Voir Transaction par seconde, combien de transactions sont effectuées par seconde et y a-t-il une baisse de la période de test?
Examinez le rapport de synthèse, le temps moyen et le temps maximal pour voir quelles demandes prennent le plus de temps . Actuellement, de nombreux écouteurs sont disponibles dans JMeter sous forme de modules complémentaires ou intégrés, mais ce sont là les points principaux à examiner dans l'ordre être capable de deviner correctement ce qui se passe. Et vous pouvez utiliser d'autres rapports comme celui-là.
Suivez mon blog pour plus de détails https://softwaretesterfriend.blogspot.in/
Pour analyser vos résultats JMeter, vous pouvez utiliser
En plus de toutes les autres réponses: il existe un site Nice de BlazeMeter où vous pouvez télécharger votre fichier de résultat de test (.jtl) et générer toutes sortes de rapports (interactifs). Il les analyse même pour vous et indique la première erreur, le point de saturation, etc. https://sense.blazemeter.com/gui/
Si vous avez une infrastructure graphite/grafana, je peux recommander l’ajout de l’écouteur backend au projet. Il enverra des mesures en temps réel au serveur de graphite et vous pourrez surveiller le test en graphite (ou grafana).