soapUI 中 JSON 响应的 xPath

xPath of JSON response in soapUI

任何人都可以帮助找到 'tenantId' 的 xpath,它在下面给出的 JSON 响应中

{
   "statusCode": "200",
   "errorParams": null,
   "payLoad":    {
      "UGX:XCD":       {
         "id": 42802,
         "fromCurrency":          {
            "tenantId": "2a610af6-2e42-4a78-8e04-98755e2c6113",
            "code": "UGX",
            "name": "Ugandan Shilling",
            "isoCode": "UGX",
            "active": true,
            "enabled": true,
            "flagModifiedName": false,
            "erpId": null,
            "createdOn": 1427155200000,
            "fieldLibraryStatus": "DRAFT",
            "userId": null
         },
         "toCurrency":          {
            "tenantId": "2a610af6-2e42-4a78-8e04-98755e2c6113",
            "code": "XCD",
            "name": "East Caribbean Dollar",
            "isoCode": "XCD",
            "active": true,
            "enabled": true,
            "flagModifiedName": true,
            "erpId": null,
            "createdOn": 1427155200000,
            "fieldLibraryStatus": "DRAFT",
            "userId": "c7f68b05-044d-44e1-8fc5-0f97a4ece91b"
         },
         "rate": 33,
         "inverseRate": 0.0303,
         "createdOn": 1434025926983,
         "modifiedOn": 1434326400000,
         "active": true,
         "purpose": "cmd",
         "enabled": true,
         "tenantFlag": true,
         "erpId": null
      }

如何遍历到'tenantId' ??

提前致谢。

SoapUI 在内部将 几乎 任何东西转换为 XML。您将不得不使用 ResponseAsXml 属性。在 GUI 中,如果单击 XML 选项卡,您可以看到此表示。

像下面这样的东西应该可以工作:

${test_step#ResponseAsXml#//*:fromCurrency/*:tenantId}
${test_step#ResponseAsXml#//*:toCurrency/*:tenantId}

如果您想使用 groovy 处理此问题,请使用 Google 提供的 GSON.jar 库扩展 SOAPUI。 这个库专门用来处理 JSON 个对象。

有了这个,你可以轻松地撕掉每个单独的对象及其属性值 JSON 对象有多复杂,一个很好的附加组件。