Use JsonPath for navigation
masterJsonPath is supported across all major APIs (AssertJ, Spring, Kotest, and core JsonAssert). It allows you to navigate to specific parts of a JSON document for targeted assertions.
Examples:
- AssertJ:
.inPath("$.store.book") - JsonAssert:
assertJsonPartEquals("[1]", ...) - Spring:
.andExpect(json().inPath("$.result.array[1]").isEqualTo(2)) - Kotest:
inPath "$.test[*].a"
// AssertJ style
assertThatJson(json)
.inPath("$.store.book")
.isArray()
.contains(json("{\"category\": \"reference\", ...}"));
// JsonAssert API
assertJsonPartEquals("[1]", "{\"test\":{\"value\":1}}", "$..value");
// Spring
mockMvc.perform(get("/sample"))
.andExpect(json().inPath("$.result.array[1]").isEqualTo(2));