2017-05-09 4 views
0

Utilisation d'Apache JMeter ver 3.2 r1790745 (la dernière) pour tester un service Web JSON, la réponse est comme:JMeter JSON extracteur, extraire toutes les valeurs d'une clé dans une chaîne

[ { 
    "id" : 3, 
    "description" : "Back", 
    "name" : "back" 
}, { 
    "id" : 1, 
    "description" : "Front", 
    "name" : "front" 
}, { 
    "id" : 6, 
    "description" : "Left", 
    "name" : "left" 
}] 

Vous voulez analyser ci-dessus réponse pour obtenir tous les ids dans une chaîne JSON Extractor, comme

3,1,6 

Mes JSON expressions de chemin est comme ceci:

$..id 

Mais je n'ai que le 1er identifiant qui est 3, le même résultat que $.[0].id Vérification du résultat dans un postprocesseur BeanShell. Si je vais à http://jsonpath.com/ $ .. id ne me donne

[ 
    3, 
    1, 
    6 
] 
+0

Je reçois 'myvar = [3,1,6]' comme vous l'avez mentionné. Je ne vois aucune erreur dans votre syntaxe. –

Répondre

4

Si vous configurez votre JSON Extractor comme:

JSON Extractor Concatenation

Vous obtiendrez la valeur requise comme ${foo_ALL}

JMeter JSON Concatenation


Je ne pense pas que l'utilisation de Beanshell est le meilleur moyen de vérifier la valeur de la variable JMeter, à l'avenir, je suggère d'utiliser Debug Sampler à la place, voir How to Debug your Apache JMeter Script pour plus de détails.