次のようなサービスから返されたJSONの匿名配列があります。
[
{"foo":1, "bar":2 , "baz":3 },
{"foo":3, "bar":4 , "baz":5 }
]
bar
要素にアクセスするにはどうすればよいですか。に
expect().body("$[*].bar", hasItems(2,4))
こことStefanGössnerの JsonPathページ で見つけたいくつかの可能性を試しましたが、何をしようとしても例外が発生します。私の問題は、そのアイテムのリストにアクセスしようとすることから直接生じているようです。
あなたが持っていることを考えると:
[
{"foo":1, "bar":2 , "baz":3 },
{"foo":3, "bar":4 , "baz":5 }
]
Rest Assuredで次のことができます。
then().body("bar",hasItems(2,4))
または
expect().body("bar",hasItems(2,4))
レガシーAPIを使用している場合。
ヨハンの答えは正しいですが、完全を期すためです。安心して「棒」要素を確認する別の方法は
expect().
body("[0].bar", equalTo(2)).
body("[1].bar", equalTo(4));