Die Geltendmachung array von arrays mit JSONPath und spring mvc
Ich habe Schwierigkeiten, herauszufinden, wie zu behaupten mit jsonPath in einem JSON-Dokument Reaktion in spring mvc. Vielleicht gibt es einen besseren Weg, dies zu erreichen als mit jsonPath für dieses spezielle Szenario. Ich möchte überprüfen, dass die links-array hat eine rel Element des "selbst" und das "href" - Attribut des Objekts, des "selbst" hat auch ein "href" - Attribut, welches gleich "/". Die JSON-Antwort sieht wie folgt aus:
{
"links":[
{
"rel":[
"self"
],
"href":"/"
},
{
"rel":[
"next"
],
"href":"/1"
}
]
}
Habe ich versucht, dieses wo kann ich sehen, dass es rel [0] hat selbst aber ich würde lieber nicht darauf verlassen, wo in der links-array-und rel-array, das selbst ist und tatsächlich das testen, was das href ist auf links[rel][self] ist "/".
Irgendwelche Ideen?
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
mockMvc = MockMvcBuilders.standaloneSetup(welcomeController).build();
}
@Test
public void givenRootUrl_thenReturnLinkToSelf() throws Exception {
mockMvc.perform(get("/")).andDo(print()).andExpect(status().isOk())
.andExpect(jsonPath("$.links[0].rel[0].", is("self")));
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie über das hinzufügen von mehreren andExpect Methoden? Etwas ähnliches wie:
Den Akzeptierte Antwort sieht okay für mich. Aber ich bin nicht vertraut mit junit4. Daher werde ich hier hinzufügen, wie ich den test ein typisches Szenario Junit5.
Werde ich hier hinzufügen, statische Importe(bei einem Anfänger), weil bei der ersten war ich arbeiten, hatte ich um die Figur, die Einfuhren innerhalb einiger Importe.
Hoffe, das ist hilfreich für jemanden. vor allem jemand, der neu in unit-Tests 🙂