HTTP yanıtından JSON verilerini okuyorum ve JSONPath tarafından çıkarılan bazı verileri vermem gerekiyor. İstediğim veriler tamam, hata ayıklama sırasında gösteriliyor, ancak değiştirmem gereken diğer JSON nesnesine ekleyemiyorum.JMeter'da JSON yanıtı işleniyor
Sorun, JSON dizisine yeni öğeler eklemeyi bilmiyorum ve ne çalıştığım önemli değil, "XXX alanına erişilemiyor" hatası alıyorum. JSON için yeniyim ve bazı önerileri takdir ediyorum. fileinfos diziyi mevcut içine yerleştirilmelidir
{
"background": null,
"childInfos": [
],
"claimScope": 2,
"customAttributeInfos": [
],
"dueDate": 1459461540000,
"instructions": null,
"name": "Client_1-23456",
"owners": [
"4YESyxwCtA2YBncmM+tnEU5Ze6Fev8K3"
],
"priority": 1,
"referenceFilesInfos": [
]
...
"batchInfos": [
{
"name": "Batch1",
"targetFormat": "TXML",
"workflowTicket": "4YESyxwCtA3PqFg+3vJ6nE5Ze6Fev8K3",
"targetLanguageInfos": [
{
"targetLanguageLocale": "de-DE",
"dueDate": 1459461540000,
"dueDateInfos": [
{
"phaseName": "AAAAAAAA",
"dueDate": 1458645663900
},
{
"phaseName": "BBBBBBB",
"dueDate": 1459098928400
},
{
"phaseName": "CCCCCC",
"dueDate": 1459461540000
}
],
"organizationTmTicket": null
}
],
"fileInfos": [
]
Şimdi, dinamik alıyorum nesneler:
JSON gibi bir şeydir.
Ben BeanShell aracılığıyla gibi şeyler denedim:
JSONObject fajl = new JSONObject();
fajl.put("repositoryTicket",vars.get("repTicket"));
fajl.put("name",vars.get("fileName"));
fajl.put("fileTargetFormat","TXML");
fajl.put("fileFormatTicket","4YESyxwCtA2glxeFIbqVOwNwQhim05Uq");
fajl.put("fileFormatName","Word");
String CEO = vars.get("CEO");
JSONObject pom = new JSONObject(CEO); - note1
pom.batchInfos[0].fileInfos[i-1].push(fajl); - note2
Note1 - CEO gelecek istek için ihtiyaç JSON ayrıştırılır.
note2 - İşlenen öğelerin sayısını izleyen sayaca sahibim. Bunu tezgahsız da denedim.
Nesne fajl iyi, biliyorum, ama bu diziye nasıl ekleyebilirim?