Dans JMeter et BeanShell, comment puis-je créer une variable en minuscules?
Dans JMeter de Paramètres de l'Utilisateur, comment puis-je créer une variable en minuscules?
Colonne de gauche
my_lowercase_variable
Colonne de droite
${__BeanShell('${my_variable}'.toLowerCase())} //fails
ou
${__javaScript('${my_variable}'.toLowerCase())} //fails
Tels que ${my_lowercase_variable}
est minuscule de ${my_variable}
. Essayé avec citation et sans et de s'échapper et de ces. Pas de chance. Toutes les astuces ou des conseils de bienvenue.
OriginalL'auteur Walter Spicer | 2011-01-21
Vous devez vous connecter pour publier un commentaire.
Note à moi-même.
Il s'avère pour être une doublure en BeanShell Sampler plutôt qu'un __BeanShell de commande. Pas exactement dans les exemples, malheureusement.
J'ai ajouté le BeanShell Échantillonneur sous le Groupe de Thread, puis fait une variable. Pas de paramètres dans le formulaire ont été requis uniquement les deux liner script ci-dessous. Tant que je ne change pas la variable, je peux copier les données d'une autre variable, de changer de place, puis rendre une Valeur de référence pour que lorsque c'est nécessaire.
D'abord définir une variable dans certains des Paramètres de l'Utilisateur ou telles
c'est à dire:
Ajouter un Haricot Échantillonneur sous les Préférences de l'Utilisateur ou de la liste de définition (juste à côté, ce n'est pas un processus enfant)
Mettre en:
Désormais sous qui avec des paires Nom/Valeur, je peux la carte ${blablabla} comme la valeur à ce nom de processus l'exige.
Noter que le Débogage de réponse sera toujours la même valeur initiale dans les caps, mais vous verrez également bla=sa casquette qui est ce que je voulais utiliser.
OriginalL'auteur Walter Spicer
Hmmmm, votre bean shell code ne fonctionne pas pour moi. Le haricot shell échantillonneur de retour:
J'ai ajouté deux guillemets doubles pour le résoudre:
OriginalL'auteur Doxa
Ne peuvent tout simplement ajouter une fonction
Remarque: VAL peuvent être corrélées ou paramiterized valeur de (e.r VAL= INFÉRIEUR ou VAL= SUPÉRIEURE). Nous pouvons utiliser cette fonction en beanshell (pré-processeur/post-processeur/sampler). Jmeter version à l'aide de (2.6).
Pouvez l'utiliser partout où nous voulons dans le script ${VALEUR}.
OriginalL'auteur priyanka
${__javaScript('${foobar}'.toLowerCase())}
ne travail. Si la sortie est${foobar}
au lieu dedesired value
, cela signifie que la variable n'a pas été déclaréNotez que les variables sont définies uniquement après la "Variable Définie par l'Utilisateur" composant a été analysé. Les Variables ne peuvent pas être réutilisés au sein d'une seule "Variable Définie par l'Utilisateur" composant par exemple:
La deuxième ligne de cette image ne sera pas en mesure de faire référence à la variable
my_variable
dans la première rangée. Pour être en mesure de se référer à la première variable, deux "Variable Définie par l'Utilisateur" composants est nécessaire. La première variable sera dans le premier élément et le deuxième variable dans le second, par exemple:${my_lower_case_variable}
Va réussir à être converti ensome value
.${__BeanShell("${my_variable}".toLowerCase())}
travaille trop. (Notez que le Haricot Shell nécessite guillemets doubles. Le code dans votre question utilise des guillemets simples.)Une autre façon est d'utiliser des
vars.get
:${__javaScript(vars.get('my_variable').toLowerCase())}
${__BeanShell(vars.get("my_variable").toLowerCase())}
OriginalL'auteur Pacerier
La beanshell et de fonctions JavaScript dans cette utilisation sera un échec, car ils n'ont pas importer les packages dont vous avez besoin pour utiliser
.toLowerCase
.Si vous avez vraiment besoin d'utiliser une fonction pour convertir des cas (plutôt que de les déclarant comme des minuscules en premier lieu), vous devrez peut-être écrire un plein beanshell post-processeur de script pour importer les paquets nécessaires.
Qu'entendez-vous par "ne pas importer les packages dont vous avez besoin pour utiliser
.toLowerCase
"? (Quelque chose comme"str".toLowerCase()
fonctionne dans les deux Bean Shell et Javascript sans avoir à les importer quoi que ce soit.)OriginalL'auteur BlackGaff