gpt4 book ai didi

regex - JMeter : Regex extracting from an array response

转载 作者:行者123 更新时间:2023-12-01 11:24:26 30 4
gpt4 key购买 nike

我想在一个长数组的响应中提取给定门牌号的 addressId。数组响应如下所示(片段):

:   :   "footprint":null,
: : "type":null,
: : "addressId":"0011442239",
: : "streetName":"solitudestr.",
: : "streetNrFirstSuffix":null,
: : "streetNrFirst":null,
: : "streetNrLastSuffix":null,
: : "streetNrLast":null,
: : "houseNumber":"25",
: : "houseName":null,
: : "city":"stuttgart",
: : "postcode":"70499",
: : "stateOrProvince":null,
: : "countryName":null,
: : "poBoxNr":null,
: : "poBoxType":null,
: : "attention":null,
: : "geographicAreas":
: : [
: : ],
: : "firstName":null,
: : "lastName":null,
: : "title":null,
: : "region":"BW",
: : "additionalInfo":null,
: : "properties":
: : [
: : ],
: : "extAddressId":null,
: : "entrance":null,
: : "district":null,
: : "addressLine1":null,
: : "addressLine2":null,
: : "addressLine3":null,
: : "addressLine4":null,
: : "companyName":null,
: : "contactName":null,
: : "houseNrExt":null,
: : "derbyStack":false
: },
: {
: : "footprint":null,
: : "type":null,
: : "addressId":"0011442246",
: : "streetName":"solitudestr.",
: : "streetNrFirstSuffix":null,
: : "streetNrFirst":null,
: : "streetNrLastSuffix":null,
: : "streetNrLast":null,
: : "houseNumber":"26",
: : "houseName":null,
: : "city":"stuttgart",
: : "postcode":"70499",
: : "stateOrProvince":null,
: : "countryName":null,
: : "poBoxNr":null,
: : "poBoxType":null,
: : "attention":null,
: : "geographicAreas":
: : [
: : ],
: : "firstName":null,
: : "lastName":null,
: : "title":null,
: : "region":"BW",
: : "additionalInfo":null,
: : "properties":
: : [
: : ],
: : "extAddressId":null,
: : "entrance":null,
: : "district":null,
: : "addressLine1":null,
: : "addressLine2":null,
: : "addressLine3":null,
: : "addressLine4":null,
: : "companyName":null,
: : "contactName":null,
: : "houseNrExt":null,
: : "derbyStack":false
: },

我在此回复中仅显示 2 个门牌号作为示例,但原始回复更大。

问:如何匹配特定 houseNumber 的 adressId(我的 CSV 数据集中有这些 houseNumbers)?我可以做一个提取所有 addressId 的正则表达式,但我必须使用正确的匹配号。在 Jmeter 中。但是,我不能假设这些顺序在我们测试脚本的不同环境中会保持不变。

最佳答案

我建议重新考虑使用正则表达式来处理 JSON 数据。

从 JMeter 3.0 开始,您有一个 JSON Path PostProcessor .使用它你可以执行任意 JSONPath查询,因此为给定的 houseNumber 提取 addressID 将非常简单:

`$..[?(@.houseNumber == '25')].addressId`

演示:

JSON Path Demo

您可以使用 JMeter 变量代替硬编码的 25 值,例如:

$..[?(@.houseNumber == '${houseNumber}')].addressId

如果出于某种原因您必须使用 JMeter < 3.0,您仍然可以使用 JSON Path Extractor 获得 JSON 路径后处理功能通过JMeter Plugins

参见 Advanced Usage of the JSON Path Extractor in JMeter文章,特别是 Conditional Select 章节以获取更多信息。

关于regex - JMeter : Regex extracting from an array response,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38916244/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com