Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1 @SpringBootTest
2 class UsuarioControladorTest {}
Anotación @AutoConfigureMockMvc
https://programandoenjava.com/pruebas-de-integracion-en-spring-boot/ 1/4
15/2/23, 23:44 PRUEBAS de INTEGRACIÓN en SPRING BOOT
1 @SpringBootTest
2 @AutoConfigureMockMvc
3 class UsuarioControladorTest {
4
5 @Autowired
6 private MockMvc mockMvc;
7 }
MockMvc
MockMvc nos proporciona métodos en los que podemos realizar llamadas HTTP a nuestro
servidor de pruebas que se crea gracias a el contexto de test en Spring Boot y además
herramientas para enviar datos en nuestra petición HTTP y además los datos que esperamos
por dicha petición. Ejemplo del uso de MockMvc:
1 @SpringBootTest
2 @AutoConfigureMockMvc
3 class UsuarioControladorTest {
4 @Autowired
5 private MockMvc mockMvc;
6
7 @Test
8 public void CUANDO_se_llama_a_usuarios_ENTONCES_el_estado_es_200() throws E
9
10 mockMvc.perform(MockMvcRequestBuilders.get("/usuarios")
11 .contentType(MediaType.APPLICATION_JSON))
12 .andExpect(MockMvcResultMatchers
13 .status()
14 .isOk())
15 .andExpect(MockMvcResultMatchers
16 .content()
17 .contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
18 }
19 }
Método perform()
Es el método principal que es usado para realizar nuestras pruebas de integración, en el que
cuál ejecuta nuestra petición en la que luego podremos testear la respuesta esperada. Éste
método acepta un parámetro en el que se suele usar los métodos estáticos de la clase
https://programandoenjava.com/pruebas-de-integracion-en-spring-boot/ 2/4
15/2/23, 23:44 PRUEBAS de INTEGRACIÓN en SPRING BOOT
MockMvcRequestBuilders para especificar que tipo de método HTTP se usará para realizar la
petición.
1 @SpringBootTest
2 @AutoConfigureMockMvc
3 class UsuarioControladorTest {
4 @Autowired
5 private MockMvc mockMvc;
6
7 @Test
8 public void perform() throws Exception {
9
10 mockMvc.perform(MockMvcRequestBuilders.get("/usuarios")
11 .contentType(MediaType.APPLICATION_JSON))
12 }
13 }
Método andExpect()
El método andExpect() se usa tras llamar el método perform() para verificar diferentes
parámetros de respuesta.
1 @SpringBootTest
2 @AutoConfigureMockMvc
3 class UsuarioControladorTest {
4 @Autowired
5 private MockMvc mockMvc;
6
7 @Test
8 public void CUANDO_se_llama_a_usuarios_ENTONCES_el_estado_es_200() throws E
9
10 mockMvc.perform(MockMvcRequestBuilders.get("/usuarios")
11 .contentType(MediaType.APPLICATION_JSON))
12 .andExpectAll(MockMvcResultMatchers
13 .status()
14 .isOk(),
15 MockMvcResultMatchers
16 .content()
17 .contentTypeCompatibleWith(MediaType.APPLICATIO
18 .andExpect(MockMvcResultMatchers
19 .status()
20 .isOk())
21 .andExpect(MockMvcResultMatchers
22 .content()
23 .contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
24 }
25 }
jsonPath()
Podemos usar el método jsonPath() para verificar diferentes datos de respuesta que sean
de tipo JSON gracias la sintaxis de jsonpath.
1 @SpringBootTest
https://programandoenjava.com/pruebas-de-integracion-en-spring-boot/ 3/4
15/2/23, 23:44 PRUEBAS de INTEGRACIÓN en SPRING BOOT
2 @AutoConfigureMockMvc
3 class UsuarioControladorTest {
4 @Autowired
5 private MockMvc mockMvc;
6
7 @Test
8 public void CUANDO_se_llama_a_usuarios_ENTONCES_el_estado_es_200() throws E
9
10 mockMvc.perform(MockMvcRequestBuilders.get("/usuarios")
11 .contentType(MediaType.APPLICATION_JSON))
12 .andExpect(status().isOk())
13 .andExpect(MockMvcResultMatchers
14 .content()
15 .contentTypeCompatibleWith(MediaType.APPLICATION_JSON))
16 .andExpect(jsonPath("$[0].nombre", is("Juan")));
17 }
18 }
← Entrada anterior
Entrada siguiente →
Related Posts
Usamos cookies para asegurar que te damos la mejor experiencia en nuestra web. Si continúas
usando este sitio, asumiremos que estás de acuerdo con ello.
Aceptar
https://programandoenjava.com/pruebas-de-integracion-en-spring-boot/ 4/4