Spring Boot

Testes no Spring Boot

Testes no Spring Boot: @SpringBootTest, @WebMvcTest, @DataJpaTest, MockMvc, TestRestTemplate, slices de teste

30 perguntas de entrevista·
Mid-Level
1

Qual anotação usar para carregar o contexto completo do Spring Boot em um teste de integração?

Resposta

@SpringBootTest carrega o contexto completo da aplicação, incluindo todos os beans e auto-configurações. Essa anotação é usada para testes de integração que exigem a aplicação inteira. @WebMvcTest e @DataJpaTest carregam apenas parte do contexto (test slicing), enquanto @ContextConfiguration é uma anotação de nível mais baixo para configurar o contexto manualmente (mais complexa).

2

O que é test slicing no Spring Boot?

Resposta

O test slicing consiste em carregar apenas uma parte específica do contexto Spring para acelerar os testes. Por exemplo, @WebMvcTest carrega apenas os componentes web (controllers, filters), enquanto @DataJpaTest carrega apenas os repositories JPA. Isso reduz o tempo de inicialização e melhora o desempenho dos testes ao evitar carregar beans desnecessários.

3

Qual anotação usar para testar apenas um controller do Spring MVC?

Resposta

@WebMvcTest foi projetado especificamente para testar controllers do Spring MVC. Essa anotação carrega apenas os componentes web (controllers, @ControllerAdvice, filters, interceptors) e configura o MockMvc automaticamente. @SpringBootTest carregaria todo o contexto (desnecessário para testar um único controller), @DataJpaTest é para repositories e @RestClientTest é para testar clientes HTTP (RestTemplate, WebClient).

4

Para que serve a anotação @MockBean no Spring Boot Test?

5

Qual objeto usar para simular requisições HTTP em um teste com @WebMvcTest?

+27 perguntas de entrevista

Domine Spring Boot para sua proxima entrevista

Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.

Comece gratis