Je reçois Json comme réponse. Au lieu d'utiliser plusieurs jsonPath_assertion, je veux le vérifier dans un seul beanshell. A chaque fois, je reçois une réponse avec des valeurs différentes.
Réponses
Trop de publicités?Je suggère d'utiliser JSR223 Assertion y Langage Groovy au lieu de cela.
Groovy a intégré Support JSON vous pourrez donc utiliser JsonSlurper pour analyser la réponse :
def json = new groovy.json.JsonSlurper.parseText(prev.getResponseDataAsString())
// do what you need here
En outre, Groovy est bien plus performant que Beanshell et il est recommandé pour l'utiliser en tant que script dans JMeter. Voir Groovy Is the New Black pour plus d'informations.
Vous pouvez utiliser l'assertion "beanshell", qui vous aidera.
prev.getResponseDataAsString()
vous renverra votre respo json J'espère que vous utiliserez l'évaluateur en ligne Jsonpath pour évaluer les réponses json. Supposons que le code de mon évaluateur json en ligne ressemble à ceci$.items[2].CM_SEQNUMBER
Dans l'assertion "beanshell", j'ai utilisé
JsonObject jsonobj = JsonObject.readFrom(jsonString);
JsonArray jsonarr = jsonobj.get("items").asArray();
String pickupToCheck=jsonarr.get(2).asObject().get("CM_SEQNUMBER").asString();
De même, vous pouvez vérifier vos données JSON sans utiliser plusieurs extracteurs JSONPath en utilisant une seule assertion beanshell.