Select 来自 JMeter 中 JSON 响应的随机名称
Select random name from the JSON response in JMeter
在响应正文中,我有以下 JSON,其中包含 ID 和作为子元素的名称,我想 select 每次 [=] 随机名称及其相应的 ID 21=]我的测试,怎么做的?
可能是通过 post 处理器或 json 提取器,我是 JMeter 的新手。
{
"entities": {
"chairs": {
"a99a921e-9ced-43eb-8521-a8e972c5afee": {
"id": "a99a921e-9ced-43eb-8521-a8e972c5afee",
"accountId": "02a39418-2936-4696-9f3f-02f503128ac7",
"description": null,
"isActive": true,
"pmsId": "5079767850816079897",
"name": "PranayOP",
"createdAt": "2021-03-18T17:46:53.253Z",
"updatedAt": "2021-03-18T17:46:53.253Z",
"deletedAt": null
},
"eb125d3a-739f-479c-b803-dbffb6a871d0": {
"id": "eb125d3a-739f-479c-b803-dbffb6a871d0",
"accountId": "02a39418-2936-4696-9f3f-02f503128ac7",
"description": null,
"isActive": true,
"pmsId": "-3332289498024566266",
"name": "OVERFLOW",
"createdAt": "2021-03-16T00:42:35.115Z",
"updatedAt": "2021-03-16T00:42:35.115Z",
"deletedAt": null
},
"36891051-1edf-46ea-a167-68d39a8a70f5": {
"id": "36891051-1edf-46ea-a167-68d39a8a70f5",
"accountId": "02a39418-2936-4696-9f3f-02f503128ac7",
"description": null,
"isActive": true,
"pmsId": "-4453494259576621766",
"name": "OP55",
"createdAt": "2021-03-20T02:19:00.494Z",
"updatedAt": "2021-03-20T02:19:00.494Z",
"deletedAt": null
},
"85a2564e-7cd1-4e69-be5d-a979b5e56cd5": {
"id": "85a2564e-7cd1-4e69-be5d-a979b5e56cd5",
"accountId": "02a39418-2936-4696-9f3f-02f503128ac7",
"description": null,
"isActive": true,
"pmsId": "8283273375660346038",
"name": "OP02",
"createdAt": "2021-03-16T00:42:34.832Z",
"updatedAt": "2021-03-16T00:42:34.832Z",
"deletedAt": null
}
}
},
"result": [
"a99a921e-9ced-43eb-8521-a8e972c5afee",
"eb125d3a-739f-479c-b803-dbffb6a871d0",
"36891051-1edf-46ea-a167-68d39a8a70f5",
"85a2564e-7cd1-4e69-be5d-a979b5e56cd5"
]
}
添加 JSON JMESPath Extractor 作为上述 returns JSON
请求的子项
配置如下:
这里是 JMESPath 查询的文本表示以防万一:
entities.chairs.*.[name,id]
就是这样,每次都会得到["OP55","36891051-1edf-46ea-a167-68d39a8a70f5"]
形式的随机name/id组合
在需要时可以引用为 ${nameAndId}
更多信息:The JMeter JSON JMESPath Extractor and Assertion: A Guide
在响应正文中,我有以下 JSON,其中包含 ID 和作为子元素的名称,我想 select 每次 [=] 随机名称及其相应的 ID 21=]我的测试,怎么做的?
可能是通过 post 处理器或 json 提取器,我是 JMeter 的新手。
{
"entities": {
"chairs": {
"a99a921e-9ced-43eb-8521-a8e972c5afee": {
"id": "a99a921e-9ced-43eb-8521-a8e972c5afee",
"accountId": "02a39418-2936-4696-9f3f-02f503128ac7",
"description": null,
"isActive": true,
"pmsId": "5079767850816079897",
"name": "PranayOP",
"createdAt": "2021-03-18T17:46:53.253Z",
"updatedAt": "2021-03-18T17:46:53.253Z",
"deletedAt": null
},
"eb125d3a-739f-479c-b803-dbffb6a871d0": {
"id": "eb125d3a-739f-479c-b803-dbffb6a871d0",
"accountId": "02a39418-2936-4696-9f3f-02f503128ac7",
"description": null,
"isActive": true,
"pmsId": "-3332289498024566266",
"name": "OVERFLOW",
"createdAt": "2021-03-16T00:42:35.115Z",
"updatedAt": "2021-03-16T00:42:35.115Z",
"deletedAt": null
},
"36891051-1edf-46ea-a167-68d39a8a70f5": {
"id": "36891051-1edf-46ea-a167-68d39a8a70f5",
"accountId": "02a39418-2936-4696-9f3f-02f503128ac7",
"description": null,
"isActive": true,
"pmsId": "-4453494259576621766",
"name": "OP55",
"createdAt": "2021-03-20T02:19:00.494Z",
"updatedAt": "2021-03-20T02:19:00.494Z",
"deletedAt": null
},
"85a2564e-7cd1-4e69-be5d-a979b5e56cd5": {
"id": "85a2564e-7cd1-4e69-be5d-a979b5e56cd5",
"accountId": "02a39418-2936-4696-9f3f-02f503128ac7",
"description": null,
"isActive": true,
"pmsId": "8283273375660346038",
"name": "OP02",
"createdAt": "2021-03-16T00:42:34.832Z",
"updatedAt": "2021-03-16T00:42:34.832Z",
"deletedAt": null
}
}
},
"result": [
"a99a921e-9ced-43eb-8521-a8e972c5afee",
"eb125d3a-739f-479c-b803-dbffb6a871d0",
"36891051-1edf-46ea-a167-68d39a8a70f5",
"85a2564e-7cd1-4e69-be5d-a979b5e56cd5"
]
}
添加 JSON JMESPath Extractor 作为上述 returns JSON
请求的子项配置如下:
这里是 JMESPath 查询的文本表示以防万一:
entities.chairs.*.[name,id]
就是这样,每次都会得到
形式的随机name/id组合["OP55","36891051-1edf-46ea-a167-68d39a8a70f5"]
在需要时可以引用为
${nameAndId}
更多信息:The JMeter JSON JMESPath Extractor and Assertion: A Guide