繁体   English   中英

放心匹配根json数组中的值

[英]rest assured to match value from a root json array

是新来的放心

我有一个像这样的json响应

{
  "queryPath": "/api/",
  "nId": "f084f5ad24fcfaa9e9faea0",
  "statusCode": 707
  "statusMessage": "Success",
  "results": {
    "data": [
      {
        "id": "10248522500798",
        "capabilities": [
          "men",
          "women"
        ],
        "name": "errt2"
      },
      {
        "id": "418143778",
        "capabilities": [
          "dog",
          "cat"
        ],
        "name": "Livin"
      }
    ]
  }
}

String type =“ men”请放心,我需要检查具有功能数组值的type值men

[
          "men",
          "women"
        ]

"capabilities": [
          "dog",
          "cat"
        ]

    If the type value `men` not contains in any of the capabilities i need to raise error..how it is possible?

我使用下面的代码。但是它不起作用。其他方式吗?

body("results.data.capabilities", hasItems(type));

出现错误

Expected: (a collection containing "men")
  Actual: [[ men,women
        ], [dog, cat]]

问题是您的jsonPath

results.data.capabilities

指向两个“功能”数组,因为它们嵌套在JSON的同一级别。 如果您可以可靠地期望第一个“ capabilities”数组包含“ men”,则可以在jsonPath中指定第一个“ capabilities”,如下所示:

results.data.capabilities[0]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM