Jmeter Json Extractor с несколькими условными - не удалось
Я пытаюсь создать Json Extractor, и это мыслительная деятельность. У меня есть эта структура JSON:
[
{
"reportType":{
"id":3,
"nomeTipoRelatorio":"etc etc etc",
"descricaoTipoRelatorio":"etc etc etc",
"esExibeSite":"S",
"esExibeEmail":"S",
"esExibeFisico":"N"
},
"account":{
"id":9999999,
"holdersName":"etc etc etc",
"accountNamber":"9999999",
"nickname":null
},
"file":{
"id":2913847,
"typeId":null,
"version":null,
"name":null,
"format":null,
"description":"description",
"typeCode":null,
"size":153196,
"mimeType":null,
"file":null,
"publicationDate":"2018-12-05",
"referenceStartDate":"2018-12-05",
"referenceEndDate":"2018-12-06",
"extension":null,
"fileStatusLog":{
"idArquivo":2913847,
"dhAlteracao":"2018-12-05",
"nmSistema":"SISTEMA X",
"idUsuario":999999,
"reportStatusIndicador":"Z"
}
}
}
]
Что мне нужно сделать: во-первых, я использую опцию "Вычислить конкатенацию var" и "Совпадение №" как -1. Потому что сервис может принести в ответ многие из них.
Я должен проверить, если "reportStatusIndicador" = "Z" или "Y", если положительный, я должен собрать File.Id ИЛИ file.FileStatusLog.idArquivo, они одинаковы, я пробовал первый вариант, в этом случае число "2913847", но если придет больше результатов, я соберу все File.id
Имея эти значения в руках, я продолжу с a для каждого для всех File.id.
Моей последней попыткой была эта комбинация, после того как я много читал и пробовал много других комбинаций.
[? (@... file.fileStatusLog.reportStatusIndicador == 'Z' || @... file.fileStatusLog.reportStatusIndicador == 'Y')]. file.id
Но мой постпроцессор отладки всегда выглядит так, пусто: filesIds=
2 ответа
Пойти на $..[?(@.file.fileStatusLog.reportStatusIndicador == 'Z' || @.file.fileStatusLog.reportStatusIndicador == 'Y')].file.id
Демо-версия:
Рекомендации:
Я мог бы сделать это с помощью этого шаблона:
[?(@.file.fileStatusLog.reportStatusIndicador == 'Z' ||
@.file.fileStatusLog.reportStatusIndicador == 'Y')].file.id
filesIds_ALL = 2913755,2913756,2913758,2913759,2913760,2913761,2913762,2913763,2913764,2913765,2913766,2913767,2913768,2913769,2913770