J'ai le format JSON suivant dans le corps de la réponse
[
{
"Name" : "Prashant",
"City" : "Sydney"
},
{
"Name" : "Yogi",
"City" : "London"
}
]
Quel est le meilleur moyen de vérifier si ce tableau a des enregistrements et si oui, donnez-moi "Nom" pour le premier index du tableau. J'utilise jp @ gc JSON extractor plugin pour jMeter.
Est-il possible d'analyser cela en utilisant un plugin ou dois-je le faire en utilisant des expressions régulières?
En utilisant Ubik Load Pack plugin JSON pour JMeter, qui fait partie de JMeter depuis la version 3.0 (plugin donné) et appelé JSON Extractor , vous pouvez le faire:
Vue d'ensemble du plan de test:
ULP_JSON PostProcessor:
Si contrôleur:
Et voici le résultat de la course:
Comme vous pouvez le constater, c'est possible avec notre solution.
Je ne suis pas sûr de votre plug-in, mais s'il prend en charge les expressions de chemin JSON, cela devrait être possible.
Essayez avec cette expression: $.[0].Name
.
C’est le plugin que j’utilise: http://jmeter-plugins.org/wiki/JSONPathExtractor/ et l’expression donnée fonctionne avec.
Pour en savoir plus sur les expressions de chemin JSON, cliquez ici: http://goessner.net/articles/JsonPath/index.html#e2 .
Travailler avec JSON dans JMeter n’est pas une tâche facile, car JMeter a été conçu bien avant l’invention de JSON. Il existe toutefois des extensions qui facilitent la vie:
Nous pouvons ajouter un extracteur d'expression régulière pour récupérer la valeur de la réponse.
Comme ça:
Si possible, utilisez toujours Regular Expression Extractor
. Essayez d'éviter les extracteurs JSON/XPATH/Other. Ils peuvent sembler faciles à utiliser. Mais ils consomment plus de mémoire et de temps. Cela affectera les performances de votre plan de test.
source : http://www.testautomationguru.com/jmeter-response-data-extractors-comparison/