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 Options  →  Log Viewer , 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
Par défaut cette console de log est désactivée, vous pouvez l'activer en changeant dans jmeter.properties :
jmeter.loggerpanel.display=true
Pour é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
Figure 1 - Rechercher du texte brut dans TreeView
Figure 1 - Rechercher du texte brut dans TreeView
Figure 2 - Résultat dans TreeView
Figure 2 - Résultat dans TreeView
Figure 3 - Rechercher une expression régulière dans TreeView (dans cet exemple, nous recherchons un mot entier)
Figure 3 - Rechercher une expression régulière dans TreeView (dans cet exemple, nous recherchons un mot entier)
Figure 4 - Résultat dans TreeView
Figure 4 - Résultat dans TreeView

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)
Ce n'est pas un support HiDPI complet et n'affecte que
  • 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
Les liaisons ci-dessus sont faites pour les claviers Windows QWERTY. Pour les autres plates-formes et claviers, assurez-vous d'adapter ces valeurs.

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
Go to top