我正在使用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提取器中处理这种情况?