2016-09-14 27 views
2

响应体列表:验证值返回使用JsonPath

{ 
"Items":[{ 
      "ID": 12, 
      "Name": "n1", 
      "Inactive": false 
     }, 
     { 
      "ID": 16, 
      "Name": "n2", 
      "Inactive": false 
     }, ...etc 
     ] 
} 

使用JsonPath lib下,我能够用下面的表达来获得特定元素的所有值(比方说,“无效”)的名单。 '$ .. Inactive'---> [false,false,.. etc]

但是,我不知道如何应用匹配器使用JsonPathAssert断言上述列表,以便它应该只包含'false ”。

我正在使用Java,JsonPath。有人可以帮助我吗?

回答

0

经过一番研究,我可以断言这个列表 - 它应该只包含'false',如下所述。

org.hamcrest.MatcherAssert.assertThat(actualJson.toString(), JsonPathMatchers.hasJsonPath("$..Inactive", Matchers.everyItem(Matchers.equalTo(false))));