restassured how given example desde cero assured json rest-assured rest-assured-jsonpath

json - how - restassured maven



Acceda a los elementos de una matriz anónima a través de JsonPath en RestAssured (2)

Tengo una matriz anónima en JSON devuelta desde un servicio como:

[ {"foo":1, "bar":2 , "baz":3 }, {"foo":3, "bar":4 , "baz":5 } ]

¿Cómo puedo acceder a los elementos de la bar , por ejemplo, en

expect().body("$[*].bar", hasItems(2,4))

Probé algunas de las posibilidades que encontré aquí y también en la página de JsonPath de Stefan Gössner, pero lo que sea que obtenga, tengo excepciones. Mi problema parece provenir directamente de intentar acceder a esa lista de elementos.


Dado que tienes:

[ {"foo":1, "bar":2 , "baz":3 }, {"foo":3, "bar":4 , "baz":5 } ]

Puedes hacer lo siguiente en Rest Assured:

then().body("bar",hasItems(2,4))

o

expect().body("bar",hasItems(2,4))

si está utilizando la API heredada.


La respuesta de Johan es correcta, solo por el bien de la integridad: una forma alternativa de verificar los elementos de la ''barra'' con la tranquilidad de estar asegurada

expect(). body("[0].bar", equalTo(2)). body("[1].bar", equalTo(4));