Jmeter在jmeter json提取器中提取空值

时间:2018-04-25 11:43:20

标签: json jmeter

我正在使用jmeter json提取器 我的JSON响应如下所示 -

{ "data": 
    [ 
    { 
    ".auths": 
    [ 
    { 
    "asf": 
    { 
    "__t": "aaaaa", 
    "vs": 1, 
    "v": 
    [ { 
    "__id": "1", 
    ".state": 1, 
    ".version": 275, 
    "authorizedSubFlight": { "v": "SUB1" }, 
    "purchaseOrderNumber": 
    { "__t": "0000", "vs": 1, "v": "9999", "vl": "PO1" } }, 
    { 
    "__t": "bbbbb", 
    "vs": 1, 
    "v": [ 
    { 
    "__id": "2", 
    ".state": 1, 
    ".version": 275, 
    "authorizedSubFlight": { "v": "SUB2" }, 
    "purchaseOrderNumber": 
    { "__t": "0000", "vs": 1, "v": null, } }, 
    { 
    "__t": "ccccc", 
    "vs": 1, 
    "v": [ 
    { 
    "__id": "3", 
    ".state": 1, 
    ".version": 275, 
    "authorizedSubFlight": { "v": "SUB3" }, 
    "purchaseOrderNumber": null },

&安培;等......

我需要提取 authorizedSubFlight &的值。 purchaseOrderNumber 如下 -

var_sb_1 = SUB1, var_po_1 = PO1
var_sb_2 = SUB2, var_po_2 = NULL
var_sb_3 = SUB3, var_po_3 = NULL

然后我在 jdbc request 中使用这些值,这个值在var_sb的每个值的while循环下,所以我希望SUB1,{{1读取时应始终读取第一个值var_po,即PO1等。

我的问题特别是提取var_po_1值。我使用JSON提取器作为 -

var_po

我期待json path expression: $..data[*].[".auths"][*].purchaseOrderNumber.vl match no: -1 default value: null & var_po_2 = null,但我得到的只是var_po_3 = null&因此我的进一步检查失败了。

这可能是因为我在json路径表达式&中提取vl的值。我没有vl for second&第三种情况。

有没有办法在json提取器中处理这种情况?

0 个答案:

没有答案