java / intermediate
Snippet
Integrationstests mit MockMvc
MockMvc bietet eine Möglichkeit, die Webschicht zu testen, ohne einen vollständigen HTTP-Server zu starten. Es erlaubt Ihnen, Anfragen zu simulieren und Antworten zu verifizieren, einschließlich Statuscodes, JSON-Inhalten und Headern.
snippet.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@SpringBootTest@AutoConfigureMockMvcclass UserControllerTest {@Autowiredprivate MockMvc mockMvc;@Testvoid shouldReturnUser() throws Exception {mockMvc.perform(get("/api/users/1")).andExpect(status().isOk()).andExpect(jsonPath("$.username").value("john_doe")).andExpect(header().exists("Content-Type"));}}
spring
Erklärung
1
@AutoConfigureMockMvc
Konfiguriert die MockMvc-Instanz zur Verwendung in der Testklasse.
2
mockMvc.perform(get(...))
Simuliert eine HTTP-GET-Anfrage an den angegebenen Endpunkt.
3
jsonPath("$.username")
Ein Ausdruck zur Untersuchung des JSON-Bodys der Antwort.