【问题标题】:Jmeter Json Extractor with multiple conditional - failed具有多个条件的 Jmeter Json Extractor - 失败
【发布时间】:2019-05-07 02:03:51
【问题描述】:

我正在尝试创建一个 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"
     }
  }
 }
]

我需要做的:首先,我使用“Compute concatenation var”和“Match No”选项。作为-1。因为服务可以带来很多这样的响应。

我必须验证,如果“reportStatusIndicador” = 'Z' 或 'Y',如果是肯定的,我必须收集 File.Id 或 file.FileStatusLog.idArquivo,它们是相同的,我正在尝试第一个选项,在这种情况下是数字“2913847”,但如果有更多结果,我会收集所有 File.id`s

有了这些值,我将继续为所有 File.id 设置一个 for each。

我最后一次尝试,是这个组合,经过大量阅读并尝试了许多其他组合。

[?(@...file.fileStatusLog.reportStatusIndicador == 'Z' || @...file.fileStatusLog.reportStatusIndicador == 'Y')].file.id

但我的调试后处理器总是这样显示,为空: filesIds=

【问题讨论】:

    标签: json jmeter stress-testing json-extract


    【解决方案1】:

    $..[?(@.file.fileStatusLog.reportStatusIndicador == 'Z' || @.file.fileStatusLog.reportStatusIndicador == 'Y')].file.id

    演示:

    参考资料:

    【讨论】:

    • 我试过了,它也有效,谢谢!标记为正确以获得您的支持。
    【解决方案2】:

    我可以用这个模式来做:

    [?(@.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,29173

    【讨论】:

    • 如果有人有简单的方法或不同的方法,我在这里等待作为正确答案发布。
    猜你喜欢
    • 2020-08-23
    • 1970-01-01
    • 1970-01-01
    • 2021-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多