Le problème lui-même réside dans: J'ai une réponse d'un échantillonneur HTTP, qui ressemble à
{ "data": [ {"report_date": "xx.xx.xxxx"}, {"report_date": "xx.xx.xxxx"}, {"report_date": "xx.xx.xxxx"} ], "pagination": { "totalRow": 58, "pageNumber": 0, "pageSize": 0 }, "accessButtons": null
}
Je dois transférer le bloc entier avec les dates de rapport vers un autre échantillonneur HTTP. Comment puis-je faire cela exactement? J'ai réussi à saisir une date de rapport et à créer une variable pour chaque date de rapport trouvée, mais je dois soit les mettre tous en bloc dans le prochain échantillonneur, soit, d'une manière ou d'une autre, créer ce bloc à partir de la liste variables. D'où dois-je commencer?
4 Réponses :
Vous pouvez enregistrer toutes les réponses à l'aide de Regular Expression Extractor vers une variable using regex
[^`]*
Je n'utilise pas les valeurs ( ^
) `pour obtenir toutes les réponses avec des retours à la ligne
Si c'est du JSON interne, vous pouvez mettre le texte avant et après dans regex
Il est probablement préférable d'utiliser l'extracteur JSON dans jmeter et d'utiliser $ .. data [: 3]
Chemin JSON qui récupérera le bloc "data" et ramènera les lignes dans l'index 0, 1 et 2. Jetez un œil à cet article et essayez:
Comment analyser une réponse JSON à l'aide de l'extracteur JSON de JMeter
Mettez le code suivant dans la zone "Script":
def data = new groovy.json.JsonSlurper().parse(prev.getResponseData()).data def payload = new groovy.json.JsonBuilder(data).toPrettyString() log.info('------Generated JSON--------') log.info(payload) vars.put('data', payload)
Voilà, le contenu de l'élément data
n'est pas stocké dans $ {data}
Variable JMeter:
Plus d'informations: