jMeter - Éléments du plan de test

Un plan de test JMeter comprend les éléments de test décrits ci-dessous. Un plan de test comprend au moins un groupe de threads. Dans chaque groupe de threads, nous pouvons placer une combinaison d'un ou de plusieurs autres éléments - Sampler, Logic Controller, Configuration Element, Listener et Timer. Chaque échantillonneur peut être précédé d'un ou plusieurs éléments de pré-processeur, suivis par un élément de post-processeur et / ou un élément d'assertion. Voyons chacun de ces éléments en détail -

Groupe de threads

Les éléments du groupe de threads sont les points de départ de votre plan de test. Comme son nom l'indique, les éléments du groupe de threads contrôlent le nombre de threads que JMeter utilisera pendant le test. Nous pouvons également contrôler les éléments suivants via le Thread Group -

  • Définition du nombre de threads

  • Réglage du temps de montée

  • Définition du nombre d'itérations de test

Le panneau de configuration du groupe de threads ressemble à ceci:

Le panneau du groupe de threads contient les composants suivants -

  • Action to be taken after a Sampler error - En cas d'erreur lors de l'exécution du test, vous pouvez laisser le test soit -

    • Continue à l'élément suivant du test

    • Stop Thread pour arrêter le thread en cours.

    • Stop Test complètement, au cas où vous voudriez inspecter l'erreur avant qu'elle ne continue à s'exécuter.

  • Number of Threads - Simule le nombre d'utilisateurs ou de connexions à votre application serveur.

  • Ramp-Up Period Définit le temps nécessaire à JMeter pour exécuter tous les threads.

  • Loop Count - Définit le nombre d'exécutions du test.

  • Scheduler checkbox - Une fois sélectionnée, la section Configuration du planificateur apparaît en bas du panneau de contrôle.

  • Scheduler Configuration - Vous pouvez configurer l'heure de début et de fin d'exécution du test.

Contrôleurs

JMeter a deux types de contrôleurs: les échantillonneurs et les contrôleurs logiques .

Échantillonneurs

Les échantillonneurs permettent à JMeter d'envoyer des types spécifiques de requêtes à un serveur. Ils simulent une demande utilisateur pour une page du serveur cible. Par exemple, vous pouvez ajouter un échantillonneur de requête HTTP si vous devez effectuer un POST, GET ou DELETE sur un service HTTP.

Certains échantillonneurs utiles sont -

  • Requête HTTP
  • Demande FTP
  • Demande JDBC
  • Demande Java
  • Requête SOAP / XML
  • Demandes RPC

La capture d'écran suivante montre un panneau de configuration de l'échantillonneur de requête HTTP -

Contrôleurs logiques

Les contrôleurs logiques vous permettent de contrôler l'ordre de traitement des échantillonneurs dans un thread. Les contrôleurs logiques peuvent modifier l'ordre d'une requête provenant de n'importe lequel de leurs éléments enfants. Quelques exemples sont - Contrôleur ForEach, Contrôleur While, Contrôleur de boucle, Contrôleur IF, Contrôleur d'exécution, Contrôleur entrelacé, Contrôleur de débit et Contrôleur d'exécution unique.

La capture d'écran suivante montre un panneau de commande de contrôleur de boucle -

La liste suivante comprend tous les contrôleurs logiques fournis par JMeter -

  • Contrôleur simple
  • Contrôleur de boucle
  • Un seul contrôleur
  • Contrôleur d'entrelacement
  • Contrôleur aléatoire
  • Contrôleur d'ordre aléatoire
  • Contrôleur de débit
  • Contrôleur d'exécution
  • Si contrôleur
  • Pendant que le contrôleur
  • Contrôleur de commutateur
  • ForEach Controller
  • Contrôleur de module
  • Inclure le contrôleur
  • Contrôleur de transaction
  • Contrôleur d'enregistrement

Fragments de test

Un fragment de test est un type spécial d'élément placé au même niveau que l'élément Thread Group. Il se distingue d'un groupe de threads en ce qu'il n'est exécuté que s'il est référencé par un contrôleur de module ou un contrôleur Include_Controller. Cet élément est purement pour la réutilisation du code dans les plans de test.

Les auditeurs

Les écouteurs vous permettent d'afficher les résultats des échantillonneurs sous la forme de tableaux, de graphiques, d'arbres ou de texte simple dans certains fichiers journaux. Ils fournissent un accès visuel aux données recueillies par JMeter sur les cas de test lors de l'exécution d'un composant Sampler de JMeter.

Les écouteurs peuvent être ajoutés n'importe où dans le test, y compris directement sous le plan de test. Ils collecteront des données uniquement à partir d'éléments inférieurs ou égaux à leur niveau. La liste suivante comprend tous les écouteurs fournis par JMeter -

  • Exemple de configuration d'enregistrement des résultats
  • Graphique des résultats complets
  • Résultats du graphique
  • Visualiseur Spline
  • Résultats d'assertion
  • Afficher l'arborescence des résultats
  • Rapport agrégé
  • Afficher les résultats dans le tableau
  • Rédacteur de données simple
  • Surveiller les résultats
  • Graphique de distribution (alpha)
  • Graphique agrégé
  • Visualiseur de courrier
  • Écouteur BeanShell
  • Rapport sommaire

Minuteries

Par défaut, un thread JMeter envoie des requêtes sans pause entre chaque échantillonneur. Ce n'est peut-être pas ce que vous voulez. Vous pouvez ajouter un élément timer qui vous permet de définir une période d'attente entre chaque requête.

La liste suivante montre tous les minuteurs fournis par JMeter -

  • Minuterie constante
  • Minuterie aléatoire gaussienne
  • Minuterie aléatoire uniforme
  • Minuterie à débit constant
  • Minuterie de synchronisation
  • Heure JSR223
  • Heure BeanShell
  • Heure BSF
  • Temps aléatoire de Poisson

La capture d'écran suivante montre un panneau de commande à minuterie constante -

Assertions

Les assertions vous permettent d'inclure un test de validation sur la réponse de votre demande faite à l'aide d'un échantillonneur. À l'aide d'assertions, vous pouvez prouver que votre application renvoie les données correctes. JMeter met en évidence lorsqu'une assertion échoue.

La liste suivante comprend toutes les assertions fournies par JMeter -

  • Assertion Beanshell
  • Assertion BSF
  • Comparer l'assertion
  • Assertion JSR223
  • Assertion de réponse
  • Assertion de durée
  • Assertion de taille
  • Assertion XML
  • Assertion BeanShell
  • Assertion MD5Hex
  • Assertion HTML
  • Assertion XPath
  • Assertion de schéma XML

La capture d'écran suivante montre un panneau de configuration d'assertion de réponse -

Éléments de configuration

Les éléments de configuration vous permettent de créer des valeurs par défaut et des variables à utiliser par les échantillonneurs. Ils sont utilisés pour ajouter ou modifier les demandes faites par les échantillonneurs.

Ils sont exécutés au début de l'étendue dont ils font partie, avant les échantillonneurs situés dans la même étendue. Par conséquent, un élément de configuration est accessible uniquement de l'intérieur de la branche où il est placé.

La liste suivante comprend tous les éléments de configuration fournis par JMeter -

  • Counter
  • Configuration de l'ensemble de données CSV
  • Valeurs par défaut des requêtes FTP
  • Gestionnaire d’autorisations HTTP
  • Gestionnaire de cache HTTP
  • Gestionnaire de cookies HTTP
  • Serveur proxy HTTP
  • Valeurs par défaut des requêtes HTTP
  • Gestionnaire d'en-tête HTTP
  • Valeurs par défaut des requêtes Java
  • Configuration du keystore
  • Configuration de la connexion JDBC
  • Élément de configuration de connexion
  • Valeurs par défaut des requêtes LDAP
  • Valeurs par défaut des requêtes étendues LDAP
  • Configuration de l'échantillonneur TCP
  • Variables définies par l'utilisateur
  • Élément de configuration simple
  • Variable aléatoire

Éléments pré-processeur

Un élément de pré-processeur est quelque chose qui s'exécute juste avant l'exécution d'un échantillonneur. Ils sont souvent utilisés pour modifier les paramètres d'une requête d'échantillonnage juste avant son exécution ou pour mettre à jour des variables qui ne sont pas extraites du texte de la réponse.

La liste suivante comprend tous les éléments de pré-processeur fournis par JMeter -

  • Analyseur de lien HTML
  • Modificateur de réécriture d'URL HTTP
  • Modificateur de paramètre utilisateur HTTP
  • Paramètres utilisateur
  • Préprocesseur JDBC
  • Préprocesseur JSR223
  • Paramètres utilisateur RegEx
  • Préprocesseur BeanShell
  • Préprocesseur BSF

Éléments de post-processeur

Un post-processeur s'exécute après qu'un échantillonneur a terminé son exécution. Cet élément est le plus souvent utilisé pour traiter les données de réponse, par exemple pour récupérer une valeur particulière pour une utilisation ultérieure.

La liste suivante comprend tous les éléments de post-processeur fournis par JMeter -

  • Extracteur d'expressions régulières
  • Extracteur XPath
  • Gestionnaire d'actions de statut de résultat
  • Post-processeur JSR223
  • Post-processeur JDBC
  • Post-processeur BSF
  • Extracteur CSS / JQuery
  • BeanShell PostProcessor
  • Déboguer le postprocesseur

Ordre d'exécution des éléments de test

Voici l'ordre d'exécution des éléments du plan de test -

  • Éléments de configuration
  • Pre-Processors
  • Timers
  • Sampler
  • Post-processeurs (sauf si SampleResult est nul)
  • Assertions (sauf si SampleResult est nul)
  • Écouteurs (sauf si SampleResult est nul)