22. Trucs et astuces ¶
Cette section est une collection de divers conseils et astuces qui ont été suggérés par diverses questions sur la liste des utilisateurs JMeter. Si vous ne trouvez pas ce que vous cherchez ici, veuillez consulter le Wiki JMeter . Essayez également de rechercher dans la liste des utilisateurs JMeter ; quelqu'un a peut-être déjà proposé une solution.
22.1 Passer des variables entre les threads ¶
Les variables JMeter ont une portée de thread. Ceci est délibéré, afin que les threads puissent agir indépendamment. Cependant, il est parfois nécessaire de transmettre des variables entre différents threads, dans le même groupe de threads ou dans des groupes de threads différents.
Une façon de faire est d'utiliser une propriété à la place. Les propriétés sont partagées entre tous les threads JMeter, donc si un thread définit une propriété , un autre thread peut lire la valeur mise à jour.
S'il y a beaucoup d'informations à transmettre entre les threads, envisagez d'utiliser un fichier. Par exemple, vous pouvez utiliser Save Responses to a file listener ou peut-être un BeanShell PostProcessor dans un thread, lire le fichier à l'aide du protocole HTTP Sampler " file: " et extraire les informations à l'aide d'un élément PostProcessor ou BeanShell.
Si vous pouvez dériver les données avant de commencer le test, il peut être préférable de les stocker dans un fichier, lisez-les à l'aide de CSV Dataset.
22.2 Activation de la journalisation du débogage ¶
La plupart des éléments de test incluent la journalisation de débogage. Si vous exécutez un plan de test à partir de l'interface graphique, sélectionnez l'élément de test et utilisez le menu d'aide pour activer ou désactiver la journalisation. Le menu Aide a également une option pour afficher l'interface graphique et les noms de classe d'éléments de test. Vous pouvez les utiliser pour déterminer le paramètre de propriété correct pour modifier le niveau de journalisation.
Il est parfois très utile de voir les messages du journal pour déboguer les langages de script dynamiques comme BeanShell ou Apache Groovy utilisés dans JMeter. Vous pouvez afficher les messages de journal directement dans l'interface graphique de JMeter, pour ce faire :
- utilisez le menu , une console de journal apparaîtra en bas de l'interface
- Ou cliquez sur l'icône d'avertissement dans le coin supérieur droit de l'interface graphique
jmeter.loggerpanel.display=truePour éviter d'utiliser trop de mémoire, ce composant limite le nombre de caractères utilisés par ce panneau :
jmeter.loggerpanel.maxlength=80000
22.3 Recherche ¶
Il est parfois difficile de trouver dans une arborescence de plan de test et des éléments utilisant une variable ou contenant une certaine URL ou un certain paramètre. Une nouvelle fonctionnalité est maintenant disponible depuis la version 2.6, vous pouvez y accéder dans le menu Recherche. Il fournit la recherche avec les options suivantes :
- Sensible aux majuscules et minuscules
- Rend la recherche sensible à la casse
- Exp.
- Le texte à rechercher est-il une expression régulière, si c'est le cas, l'expression régulière sera recherchée dans l'arborescence des composants, par exemple " \btest\b " correspondra à tout composant contenant un test dans les éléments interrogeables du composant
22.4 JMeter avec un écran HiDPI sous Linux ou Windows ¶
Le mode HiDPI n'est actuellement pas pris en charge par l'API Swing en Java sous Linux, MacOS ou Windows. Par conséquent, JMeter peut être très difficile à lire avec un écran HiDPI (petites icônes et caractères).
Vous pouvez améliorer l'affichage du JMeter sur l'écran HiDPI en modifiant certaines propriétés :
- jmeter.hidpi.mode
- défini sur true pour activer un mode ' pseudo' -hidpi permettant d'augmenter la taille de certains éléments de l'interface utilisateur
- jmeter.hidpi.scale.facteur
- défini sur 2.0 pour mettre à l'échelle la taille de certains éléments de l'interface utilisateur
- jmeter.toolbar.icons.size
- avec ces valeurs : 22x22 (taille par défaut), 32x32 ou 48x48 (valeur suggérée pour HiDPI)
- jmeter.tree.icons.size
- avec ces valeurs : 19x19 (taille par défaut), 24x24 , 32x32 (valeur suggérée pour HiDPI) ou 48x48
De plus, vous pouvez augmenter la taille de la police des zones de texte dans certains éléments comme l'échantillonneur JSR223 en modifiant ces propriétés :
- jsyntaxtextarea.font.family
- mis à Hack pour activer et changer la police et leur taille
- jsyntaxtextarea.font.size
- défini sur une valeur supérieure, comme 28 (valeur suggérée pour HiDPI)
- Nœuds d'arborescence JMeter
- Icônes dans la barre d'outils
- Contenu des tableaux
- Taille de la police dans les zones de texte
22.5 Configuration du processus d'enregistrement automatique ¶
Depuis JMeter 3.0, JMeter enregistre automatiquement jusqu'à dix sauvegardes de chaque fichier jmx enregistré. Lorsqu'il est activé, juste avant l'enregistrement du fichier jmx, il sera sauvegardé dans le sous-dossier ${JMETER_HOME}/backups . Les fichiers de sauvegarde sont nommés d'après le fichier jmx enregistré et se voient attribuer un numéro de version qui est automatiquement incrémenté, par exemple : test-plan-000001.jmx , test-plan-000002.jmx , test-plan-000003.jmx , etc. -backup, ajoutez les propriétés suivantes à user.properties .
- backup_on_save
-
Pour activer/désactiver la sauvegarde automatique, définissez la propriété suivante sur true / false (la valeur par défaut est true ) :
jmeter.gui.action.save.backup_on_save=false
- répertoire_sauvegarde
-
Le répertoire de sauvegarde peut également être défini sur un emplacement différent. La définition de la propriété jmeter.gui.action.save.backup_directory sur le chemin du répertoire souhaité entraînera le stockage des fichiers de sauvegarde à l'intérieur au lieu du dossier ${JMETER_HOME}/backups . Si le répertoire spécifié n'existe pas, il sera créé. Si cette propriété n'est pas définie, le dossier ${JMETER_HOME}/backups sera utilisé.
jmeter.gui.action.save.backup_directory=/path/to/backups/dir
- keep_backup_max_hours
-
Vous pouvez également configurer la durée maximale (en heures) pendant laquelle les fichiers de sauvegarde doivent être conservés depuis l'heure de sauvegarde la plus récente. Par défaut, un délai d'expiration nul est défini, ce qui indique à JMeter de conserver les fichiers de sauvegarde pour toujours. Utilisez la propriété suivante pour contrôler la durée de conservation maximale :
jmeter.gui.action.save.keep_backup_max_hours=0
- keep_backup_max_count
-
Vous pouvez définir le nombre maximum de fichiers de sauvegarde à conserver. Par défaut , 10 sauvegardes seront conservées. Si vous réglez ce paramètre sur zéro, les sauvegardes ne seront jamais supprimées (sauf si keep_backup_max_hours est défini sur une valeur non nulle ) . les fichiers de sauvegardes récentes seront conservés.
jmeter.gui.action.save.keep_backup_max_count=10
22.5 Ajout d'éléments avec des raccourcis clavier ¶
Lorsque vous effectuez des scripts intenses avec JMeter, il existe un moyen d'ajouter rapidement des éléments au plan de test avec des raccourcis clavier. Les liaisons par défaut sont :
- Ctrl + 0
- Groupe de fils
- Ctrl + 1
- Requête HTTP
- Ctrl + 2
- Extracteur d'expressions régulières
- Ctrl + 3
- Assertion de réponse
- Ctrl + 4
- Minuterie constante
- Ctrl + 5
- Action de test
- Ctrl + 6
- Post-processeur JSR223
- Ctrl + 7
- Préprocesseur JSR223
- Ctrl + 8
- Échantillonneur de débogage
- Ctrl + 9
- Afficher l'arborescence des résultats
Pour modifier ces liaisons, veuillez trouver les propriétés " gui.quick_* " dans le fichier jmeter.properties à titre d'exemple, il est recommandé de les remplacer dans le fichier user.properties .
22.6 Le moteur de rendu du navigateur ne s'affiche pas dans Afficher l'arborescence des résultats ¶
Si vous utilisez OpenJDK ou Oracle Java version supérieure à 8, vous remarquerez que Browser Renderer ne s'affiche pas. C'est parce que JavaFX n'est pas intégré. Afin d'avoir cet élément, vous devez suivre la procédure ci-dessous.
- Suivez cette documentation pour installer Java FX pour votre système d'exploitation et votre version de Java.
Si vous ne voulez pas le lire, voici les étapes nécessaires :- Accédez au site Web de Gluon et téléchargez le runtime pour votre version Java et votre système d'exploitation
- Décompressez-le
- Configurez ensuite une variable pointant vers le dossier lib :
Linux/MacOSX :
exporter PATH_TO_FX=chemin/vers/javafx-sdk-XX/lib
Les fenêtres:
définir PATH_TO_FX=chemin/vers/javafx-sdk-XX/lib
- Ouvrez ensuite le fichier bin/jmeter pour Linux/MacOSX, bin/jmeter.bat pour Windows, recherchez la variable JAVA9_OPTS et ajoutez :
Linux/MacOSX :
--module-path $PATH_TO_FX --add-modules javafx.web,javafx.swing
Les fenêtres:
--module-path %PATH_TO_FX% --add-modules javafx.web,javafx.swing