data parameterization jmeter using configuration elements
Ce tutoriel explique le paramétrage des données dans JMeter à l'aide des éléments de configuration pour sélectionner les données des fichiers au lieu de la configuration manuelle:
Éléments de configuration Jmeter sont les variables utilisées ultérieurement par les échantillonneurs. Les requêtes effectuées par Samplers peuvent être ajoutées ou modifiées à l'aide d'éléments de configuration.
JMeter fournit des éléments de configuration pour que le comportement réel du Web puisse être reproduit.
=> Cliquez ici pour Formation gratuite complète sur JMeter (20+ vidéos)
Ce que vous apprendrez:
- Tutoriel vidéo sur le paramétrage des données
- Éléments de configuration JMeter
- # 1) Configuration de l'ensemble de données CSV
- # 2) Valeurs par défaut des requêtes FTP
- # 3) Gestionnaire de cache DNS
- # 4) Gestionnaire d'autorisations HTTP
- # 5) Gestionnaire de cache HTTP
- # 6) Gestionnaire de cookies HTTP
- # 7) Paramètres par défaut des requêtes HTTP
- # 8) Gestionnaire d'en-tête HTTP
- # 9) Configuration du KeyStore
- # 10) Valeurs par défaut de la demande LDAP
- # 11) Valeurs par défaut des requêtes étendues LDAP
- FAQ sur les éléments de configuration JMeter
- Conclusion
Tutoriel vidéo sur le paramétrage des données
Éléments de configuration JMeter
Différents types d'éléments de configuration JMeter sont répertoriés ci-dessous:
- Configuration de l'ensemble de données CSV
- Valeurs par défaut des requêtes FTP
- Gestionnaire de cache DNS
- Gestionnaire d’autorisations HTTP
- Gestionnaire de cache HTTP
- Gestionnaire de cookies HTTP
- Valeurs par défaut des requêtes HTTP
- Gestionnaire d'en-tête HTTP
- Valeurs par défaut des requêtes Java
- Configuration de la connexion JDBC
- Configuration du KeyStore
- É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
- Variable aléatoire
- Contrer
- Élément de configuration simple
- Configuration de la source MongoDB (obsolète)
- Configuration de la connexion par boulon
Passons en revue quelques éléments de configuration JMeter couramment utilisés.
# 1) Configuration de l'ensemble de données CSV
CSV est utilisé pour lire les lignes d'un fichier et les convertir en variables. CSV Data Set Config sert la source de données qui peut fournir une grande quantité de données selon le scénario que vous testez.
Dans le cas où un utilisateur souhaite tester des applications Web pour 50 utilisateurs avec des informations d'identification différentes, il n'a pas à créer 50 scripts. Maintenant, tout ce qu'il faut faire est de créer un fichier contenant l'enregistrement utilisateur (nom d'utilisateur, mot de passe) et de télécharger ce fichier au format CSV. CSV convertit toutes les lignes de données en variables.
Voyons un exemple ci-dessous pour comprendre comment les données peuvent être lues à partir du fichier CSV et imprimées dans l'arborescence Afficher les résultats.
#1) Créer un plan de test
#deux) Ajoutez un groupe de threads avec un nombre d'utilisateurs égal à 1, une période de montée en puissance de 1 seconde et une boucle comptant 5.
# 3) Ajoutez un élément de configuration en tant que jeu de données CSV Config.
- Téléchargez un fichier CSV avec les données ci-dessous:
- Fournissez les noms de variable comme nom d'utilisateur et mot de passe avec le délimiteur séparé par des virgules.
- Sélectionnez Recycle on EOF comme true pour que le fichier soit relu une fois qu'il atteint EOF.
# 4) Ajouter un échantillonneur: Échantillonneur de débogage.
# 5) Ajouter un auditeur: Afficher l'arborescence des résultats.
# 6) Exécutez le plan de test en sélectionnant le bouton Démarrer dans le menu supérieur.
Les valeurs variables du fichier CSV sont imprimées
Étant donné que le nombre de threads a été choisi comme 5 et que le fichier CSV contient des données jusqu'à 3 lignes seulement, il relit le fichier et imprime les valeurs à partir de 1 pour les 4eéchantillonneur.
Voici la description de chaque champ:
Configurer la source de données CSV
Nom de fichier : Nom du fichier qui sera lu et converti en variables. L'option Parcourir pour télécharger le fichier est fournie avec ce champ.
Pour spécifier le chemin du fichier, vous pouvez directement mettre le nom du fichier si votre CSV est dans le dossier BIN du répertoire JMETER, sinon, spécifiez le chemin complet de votre système.
Encodage de fichier: Pour lire le fichier, le codage à utiliser doit être sélectionné dans la liste déroulante.
L'encodage de fichier a ci-dessous les options disponibles:
Si aucune option n'est sélectionnée, la plate-forme par défaut sera utilisée. Ce n'est pas un champ obligatoire.
Nom de variable : La liste des variables est fournie ici et doit être séparée par le caractère délimiteur. Si rien n'est fourni dans ce champ, la première ligne du fichier est lue et considérée comme un nom de colonne.
Utiliser la première ligne comme nom de variable : Si le nom de la variable est vide, la première ligne doit avoir des en-têtes. Si le nom de la variable n'est pas vide, la première ligne du fichier CSV sera utilisée.
Délimiteur: Les données du fichier peuvent être séparées à l'aide de Delimiter.
Autoriser les données citées: Il vérifie si les données du fichier CSV doivent être citées ou non. L'utilisateur peut sélectionner l'option True / False dans la liste déroulante.
Recyclez sur EOF: Il indique si le fichier doit être relu lorsqu'il atteint la fin. EOF signifie Fin du fichier. Par défaut, la valeur sélectionnée est True.
Arrêter le fil sur EOF? Il demande si la relecture doit être arrêtée une fois qu'elle atteint EOF ou si elle doit continuer. Par défaut, la valeur sélectionnée est false.
Mode de partage:
- Toutes les discussions: Le fichier est partagé avec tous les threads.
- Groupe de discussion actuel: Chaque fichier est ouvert pour chaque groupe de threads.
- Fil actuel: Le fichier est ouvert pour chaque thread.
- Identifier: L'ID commun est utilisé pour partager le fichier entre plusieurs groupes.
# 2) Valeurs par défaut des requêtes FTP
JMeter prend également en charge le protocole FTP. Le script peut être effectué à l'aide de FTP, FTPS et SFTP dans JMeter.
Utiliser les valeurs par défaut des requêtes FTP:
- Créez un plan de test.
- Ajouter un groupe de threads.
- Ajoutez l'élément de configuration «Paramètres par défaut de la requête FTP».
- Ajouter un échantillonneur: demande FTP.
- Ajouter un écouteur: affichez les résultats dans le tableau.
Sortie affichée dans Afficher les résultats dans le tableau:
Les détails ci-dessous vous aideront à en savoir plus sur les champs par défaut FTP:
- Nom ou adresse IP du serveur : Le nom ou l'adresse IP du serveur FTP doit être indiqué ici. Les détails fournis concernent le serveur sur lequel le fichier sera placé ou peut être pris à partir de là.
- Numéro de port: C'est du Serveur ftp . Le numéro de port par défaut utilisé est 21.
- Fichier distant: Lorsque le fichier doit être déclaré globalement, le seul chemin d'accès du fichier sur le serveur FTP doit être fourni dans ce champ, sinon il peut également être laissé vide.
- Fichier local: Identique au fichier distant - le champ peut être laissé vide, vous devez fournir un chemin pour le serveur local lorsque le fichier doit être déclaré globalement.
- Contenu du fichier local: Le contenu du fichier source peut être fourni ici et peut être utilisé au moment du téléchargement sur le serveur.
- Obtenez (RETR): Fichier à télécharger depuis le serveur FTP.
- Mettez (STOR): Pour télécharger le fichier sur le serveur FTP
- Utilisez le mode binaire: Ce mode doit être désélectionné pour les fichiers texte, pour tous les autres fichiers, les options binaires doivent être sélectionnées.
- Enregistrer le fichier dans la réponse: La sélection de cette option signifie que la sortie sera stockée sous forme de données de réponse FTP.
# 3) Gestionnaire de cache DNS
DNS Cache Manager peut être utilisé directement sous le plan de test ou le groupe de threads .
Gestionnaire d'éléments de cache DNS aide à tester les applications pour les scénarios tels que les services ne sont pas interrompus en raison d'une défaillance de l'instance ou de toute autre raison. JMeter utilise le cache par défaut comme cache DNS JVM.
JMeter envoie la demande à Load Balancer qui divise davantage les demandes aux multiples applications, disons que trois applications sont en cours de test. Parfois, la demande est envoyée à un seul AUT, la raison en est identifiée comme des caches DNS au niveau JVM.
Lire aussi = >> Comment effacer le cache DNS
Le gestionnaire de cache DNS aide à résoudre ce problème de la manière suivante:
- Ajoutez le gestionnaire de cache DNS dans le plan de test et sélectionnez l'option ' Utiliser un résolveur DNS personnalisé » et fournissez le nom d'hôte ou les adresses IP et exécutez le test. Il atteindra à la fois les adresses IP et non une.
- Lors de l'utilisation d'une requête HTTP, sélectionnez toujours Httpclient4 .
- DNS Cache Manager doit être utilisé sous Plan de test ou un élément de groupe de threads.
Description du champ:
- Effacer le cache à chaque itération: La sélection de cette option efface le cache DNS de chaque thread une fois qu'un nouveau cycle est démarré.
- Résolveur DNS du système utilisateur: Si l'utilisateur souhaite utiliser un résolveur DNS système.
- Nom d'hôte ou adresse IP: Détails des serveurs DNS à utiliser.
- Hôte et nom d'hôte ou adresse IP: L'hôte statique et le nom d'hôte ou l'adresse IP sont mappés.
# 4) Gestionnaire d'autorisations HTTP
Gestionnaire d’autorisations HTTP nous permet de donner des connexions utilisateur pour les pages de l'application Web qui sont restreintes à l'aide de l'authentification serveur. Il affiche le journal dans la boîte de dialogue si l'utilisateur tente de se connecter à la page restreinte.
comment appeler une fonction en python principal
Effacer l'authentification à chaque itération: Si cette option est sélectionnée, l'authentification à chaque itération sera effectuée indépendamment de l'authentification effectuée dans le groupe de threads précédent ou non.
URL de base: URL qui correspond à une ou plusieurs URL HTTP.
Nom d'utilisateur : Nom d'utilisateur pour l'autorisation.
Mot de passe : Mot de passe pour le nom d'utilisateur ci-dessus.
Domaine : Domaine pour NTLM.
Royaume : Royaume pour NTLM.
Mécanisme : Le mécanisme d'authentification à exécuter doit être fourni.
Prenons un exemple pour comprendre la même chose.
Essayez de vous connecter au site avec l'URL: https://httpbin.org/basic-auth/user/passwd .Il affichera une fenêtre d'authentification.
comment obtenir une fausse adresse e-mail
En cas de nom d'utilisateur ou de mot de passe incorrect ou si l'élément de configuration n'est pas activé, il retournera Code de réponse -401
Et dans le cas des détails corrects et si l'élément de configuration est activé - il retournera Code de réponse -200
# 5) Gestionnaire de cache HTTP
Gestionnaire de cache HTTP permet de sauvegarder tous les fichiers statiques téléchargés lorsque l'exécution est en cours. Il ne le fait que si l'option «Récupérer toutes les ressources intégrées» est sélectionnée. Et il ne sauvegardera pas ceux déjà enregistrés tant qu'une modification n'aura pas été effectuée.
Effacer le cache à chaque itération:
Utilisez la configuration du groupe de threads pour contrôler l'effacement du cache:
Utiliser l'en-tête cache- Control / Expires lors du traitement de GET demandes. En sélectionnant cette option, le contrôle / expiration du cache sera vérifié selon l'heure actuelle.
Nombre maximum d'éléments dans le cache: Par défaut, la valeur est de 5000 par utilisateur. Tout le cache est enregistré dans la RAM. Dans le cas où l'utilisateur met une valeur supérieure à 5000, le serveur peut lever une exception 'Mémoire insuffisante ' ainsi que.
Voyons comment il se comporte lorsque nous utilisons l'option d'en-tête cache-control / expire et lorsque nous ne l'utilisons pas.
Sélectionnez maintenant la troisième option et relancez le plan de test:
La sélection de l'option a réduit le temps d'échantillonnage et la latence.
# 6) Gestionnaire de cookies HTTP
Gestionnaire de cookies HTTP a la fonctionnalité que si l'utilisateur a une demande et une réponse HTTP ont un cookie, le gestionnaire de cookies stocke ce cookie et l'utilisera pour la future référence pour ce site spécifique.
Disons que le navigateur Edge, Firefox et Chrome sont utilisés pour naviguer sur un site Web. Lorsque l'utilisateur se connecte avec son nom d'utilisateur et son mot de passe, il est stocké dans le système en tant que cookie. La prochaine fois que l'utilisateur visite le même site Web, il n'a pas besoin de saisir des détails tels que le nom d'utilisateur et le mot de passe, car ils ont déjà été stockés dans le système en tant que cookie.
Effacer les cookies à chaque itération : À chaque itération, c'est-à-dire lorsque la boucle de thread est exécutée une fois, les cookies du serveur seront effacés.
Prenons un exemple pour comprendre:
- Ajouter un groupe de threads au plan de test avec le nombre de boucles 3
- Ajouter HTTP Cookie Manager comme élément de configuration dans le groupe de threads
- Ajouter une requête HTTP dans laquelle fournir le nom et le chemin du serveur
- Ajouter un auditeur ' Afficher l'arborescence des résultats »Et observez la sortie:
Selon les résultats ci-dessus, nous pouvons voir que dans la première demande d'itération, il n'y a pas de cookies alors que toutes les autres demandes ont des données de cookies.
Maintenant, ajoutez des détails dans l'élément de configuration du gestionnaire de cookies comme indiqué dans l'image ci-dessous et observez le résultat pour le même.
# 7) Paramètres par défaut des requêtes HTTP
Cette configuration permet à l'utilisateur de définir des valeurs par défaut pour le contrôleur de requête HTTP.
Exemple: Si vous envoyez 50 requêtes HTTP au serveur xyz.com - L'utilisateur doit entrer le «nom du serveur = xyz.com» 50 fois pour les 50 requêtes HTTP, mais avec l'aide de HTTP Request Default, l'utilisateur peut faire 50 HTTP demandes en saisissant une fois le nom du serveur = xyz.com. Cela fait gagner du temps à l'utilisateur.
Toutes les demandes iront au serveur Web fourni.
L'élément HTTP Request Default pointe vers les valeurs par défaut qui sont utilisées par les éléments de requête HTTP.
Exemple d'utilisation de l'élément HTTP Request Default:
- Plan de test: Ajouter Valeurs par défaut de la requête HTTP et ajoutez le nom du serveur en tant que tribuneindia.com
- Ajouter un groupe de threads
- Ajoutez deux requêtes HTTP dans lesquelles ne fournissez que le chemin:
- Ajouter un auditeur 'Afficher l'arborescence des résultats' et exécutez le script. Dans le cas où aucun chemin n'est fourni, la demande ira au serveur fourni dans l'élément de configuration HTTP Request Defaults.
# 8) Gestionnaire d'en-tête HTTP
Gestionnaire d'en-tête HTTP aide à ajouter ou à chevaucher des en-têtes de requête HTTP. JMeter prend en charge plusieurs gestionnaires d'en-tête. La liste de l'échantillonneur se compose d'entrées d'en-tête. À partir des entrées d'en-tête qui sont fusionnées, au cas où l'une d'elles correspond au nom d'en-tête déjà existant, l'ancien est remplacé par le nouveau.
Accept-Language, Accept-Encoding, User-Agent, Referrer sont les en-têtes standard qui peuvent être utilisés.
Le nom et les valeurs de l'en-tête peuvent être ajoutés en sélectionnant le bouton Ajouter.
Accepter la langue est utilisé pour définir la langue du serveur qui doit renvoyer la réponse au navigateur.
Acceptez le codage: Accepter le codage définit la méthode de codage que le serveur doit utiliser pour répondre. Dans le cas où le serveur ne peut pas envoyer la réponse dans le codage accepté, le serveur envoyer un message d'erreur et un code d'état sous la forme 406.
Si le champ Accepter l'encodage n'est pas fourni, le serveur supposera que le client acceptera n'importe quelle méthode d'encodage.
Agent utilisateur: L'agent utilisateur permet de trouver les caractéristiques telles que le navigateur, la version et le système d'exploitation du serveur Web. Lorsqu'un navigateur se connecte à l'un des sites Web, il envoie l'agent utilisateur vers le même. L'agent utilisateur est inclus dans l'en-tête HTTP.
Les navigateurs pris en charge par HTTP header Manager sont les suivants:
- C'EST À DIRE
- Firefox
- Safari
- Opéra
- Chrome
Référent: Lorsqu'un site Web fait référence à un autre site Web, l'adresse est capturée dans le référent HTTP.
Voyons comment fonctionne ce gestionnaire d’en-têtes HTTP:
- Créez un plan de test et ajoutez-y un groupe de threads.
- Ajoutez l'élément de configuration HTTP Header Manager et ajoutez des champs tels que Accept-Language et Accept avec leurs valeurs.
- Ajoutez une requête HTTP avec le nom et le chemin du serveur en tant que site Web.com et connectez-vous.
- Ajouter un auditeur 'Afficher l'arbre des résultats' et exécutez le script et observez la sortie
Maintenant, ajoutez un autre en-tête HTTP et apportez des modifications comme Accept-language as SP-sp et en J'accepte et réexécutez le script.
Les en-têtes sont capturés à partir du dernier gestionnaire d'en-têtes uniquement, mais aucune modification n'est apportée aux en-têtes déjà existants.
# 9) Configuration du KeyStore
Configuration du magasin de clés est de configurer KeyStore - comment être chargé et les clés à utiliser.
Pour savoir qui se connecte au serveur, certains systèmes nécessitent la configuration de certificats côté client. Cet élément de configuration permet de configurer la même chose, mais avant d'ajouter un élément KeyStore Config - Java Key Store doit être configuré avec des certificats clients.
Pour faire la même chose, les étapes suivantes doivent être suivies:
Créer un certificat:
- Utilisation de l'utilitaire Java Keytool
- Via PKI: si cela est fait via PKI, il doit être converti dans un format acceptable par JKS
Ajoutez ce qui suit dans le système. fichier de propriétés:
javax.net.ssl.keyStore = chemin_au_keystore
javax.net.ssl.keyStorePassword = password_of_keystore
Précharge : KeyStore à précharger ou non, peut être choisi en sélectionnant vrai ou faux.
Nom de variable contenant l'alias du certificat: Nom de variable qui sera composé de l'alias à utiliser pour l'authentification par certificat client.
Index de début d'alias (basé sur 0): Index de la première clé à utiliser dans KeyStore.
Index de fin d'alias (basé sur 0): L'index de la dernière clé à utiliser dans KeyStore.
# 10) Valeurs par défaut de la demande LDAP
Valeurs par défaut des requêtes LDAP permet d'ajouter des valeurs par défaut pour les tests LDAP.
différences c et c ++
Si le nombre de requêtes doit être adressé au même serveur LDAP, l'élément de configuration par défaut de la requête LDAP peut être utilisé car l'utilisateur n'aura pas à saisir les mêmes détails encore et encore pour la requête LDAP.
Quatre requêtes LDAP peuvent être configurées:
- Ajouter un test
- Supprimer le test
- Test de recherche
- Modifier le test
Ces demandes peuvent être configurées en ajoutant une demande LDAP à l'échantillonneur, puis en changeant le nom en Ajouter / Supprimer / Modifier / Rechercher et en sélectionnant la propriété comme Ajouter un test / Supprimer / Modifier / Rechercher un test, respectivement.
# 11) Valeurs par défaut des requêtes étendues LDAP
Cet élément de configuration permet d'ajouter des valeurs par défaut pour les tests LDAP étendus.
L'élément de configuration LDAP comporte neuf opérations de test telles que définies ci-dessous:
# 1) Reliure de fil
Thread Bind est utilisé pour démarrer une session avec le serveur LDAP. L'utilisateur fournit un nom d'utilisateur et un mot de passe pour lancer la session. Fournir un mot de passe incorrect démarre la session anonyme, mais échouera de la même manière.
# 2) Délier le fil
Délier le fil est une opération utilisée pour terminer la session.
# 3) Simple Bind / Unbind
Liaison / Dissociation unique fonctionne comme une combinaison des deux opérations. Il ouvre la session pour vérifier la validité du nom d'utilisateur et du mot de passe, puis met fin à la session.
# 4) Renommer l'entrée
Comme son nom l'indique, il est utilisé pour renommer une entrée. Il peut également être utilisé pour déplacer l'entrée vers un autre emplacement dans l'arborescence LDAP.
# 5) Ajouter un test
Ceci est utilisé pour ajouter des objets au serveur LDAP. C'est l'opération «d'ajout» LDAP qui est utilisée.
# 6) Test de suppression
Le test de suppression est utilisé pour supprimer un objet de l'arborescence LDAP.
L'opération utilisée est appelée opération de «suppression» LDAP.
# 7) Test de recherche
LDAP 'chercher' l'opération est effectuée pour ce test.
Des spécifications peuvent être fournies telles que le temps maximum que le serveur doit prendre pour effectuer la recherche, que l'objet soit retourné ou non (par défaut, il est considéré comme faux uniquement). Si l'analyse du résultat de la recherche est choisie vraie, le résultat de la recherche sera ajouté aux données de réponse.
# 8) Test de comparaison
Le test de comparaison est utilisé pour comparer l'attribut avec une valeur déjà connue. En général, il est utilisé pour vérifier le nom d'une personne dans le groupe, c'est-à-dire si le nom fourni existe déjà dans ce groupe ou non peut être comparé.
LDAP ' comparer »Est utilisée pour la même opération.
# 9) Test de modification
Le test de modification peut être utilisé pour ajouter / supprimer / supprimer / remplacer les valeurs à l'aide de LDAP ' modifier ' opération.
FAQ sur les éléments de configuration JMeter
Q # 1) Quel est l'élément Config dans JMeter?
Répondre : Les demandes, qui sont envoyées au serveur, sont modifiées ou configurées à l'aide d'éléments de configuration dans JMeter.
Q # 2) Quelles sont les propriétés de thread dans JMeter?
Répondre : Les propriétés Thread incluent le nombre de threads qui sont utilisés pour exécuter le même scénario, ainsi que le nombre d'itérations qui peuvent être définies à partir de la configuration.
Q # 3) Quel élément de JMeter correspond au nombre d'utilisateurs à simuler?
Répondre : Thread Group correspond au nombre d'utilisateurs à simuler car un certain nombre de threads peuvent être utilisés pour configurer les utilisateurs à simuler pour vérifier les performances et l'interaction des utilisateurs avec l'application.
Conclusion
Les éléments de configuration JMeter permettent aux utilisateurs d'accéder à n'importe quelle variable qui est en outre associée à des valeurs dans JMeter. Ils peuvent modifier les valeurs des requêtes provenant de l'échantillonneur.
Des éléments de configuration peuvent être ajoutés en cliquant avec le bouton droit sur l'échantillonneur ajouté, puis en sélectionnant l'élément de configuration dans la liste. Ils ne sont accessibles qu'à partir de l'endroit où ils sont placés, c'est-à-dire de l'intérieur de la branche d'arbre.
Il existe un certain nombre d'éléments de configuration dans JMeter, comme indiqué dans cet article, et peuvent être utilisés selon les besoins de l'utilisateur.
=> Cliquez ici Formation gratuite complète sur JMeter (20+ vidéos)
lecture recommandée
- Paramétrage des données JMeter à l'aide de variables définies par l'utilisateur
- Paramétrage dans QTP expliqué avec des exemples (partie 1) - Tutoriel QTP # 19
- Paramétrage des valeurs statiques dans LoadRunner
- Comment réaliser la corrélation JMeter avec l'exemple
- Top 5 des plugins JMeter et comment les utiliser (avec des exemples)
- Description détaillée des composants JMeter
- Méthodes d'enregistrement Web et mobile et paramétrage dans Neoload
- Variables et fonctions JMeter