Reputation: 65
I have a json response as, { 'sadasd123242' : 'asdadada122dfsfs', 'dadsadaskljk' : 'adasdasdasdsadds' } I want to extract the keys from the response in jmeter test using the JSON extractor. I am unable to do this as I do not know the keys in the response. How do I get the keys ?
Upvotes: 0
Views: 1696
Reputation: 168217
Assuming you have the response in the following format:
{
"data": {
"assets": {
"sadsad12dwqqwe": "asda1212312",
"asdasd1213123": "asdas2131231"
}
}
}
You can extract key names using JSR223 PostProcessor and the following code:
new groovy.json.JsonSlurper().parse(prev.getResponseData()).data.assets.eachWithIndex{ def node, int idx ->
log.info('Key ' + idx + '=' + node.getKey())
vars.put('key_' + idx, node.getKey())
}
It will print key names into jmeter.log file and create JMeter Variables like:
- `${key_1}`
- `${key_2}`
- etc.
holding the required "key" values.
Demo:
References:
Upvotes: 2
Reputation: 1999
Considering first value as key which is dynamic and second value you have to fetch.
You can use "Boundary extractor" post processor in that case by defining the left and right boundary as shown in the below image.
Check the below test for boundary expression to get the desired result:-
Hope this help.
Upvotes: 0