Diferença entre @SpringBootTest @AutoConfigureMockMvc @WebMvcTest
No desenvolvimento com Spring Boot, é comum usar diferentes anotações para testar componentes da aplicação. Cada uma das anotações mencionadas (@SpringBootTest, @AutoConfigureMockMvc e @WebMvcTest) tem propósitos distintos e é adequada para diferentes tipos de testes.
- @SpringBootTest: Ideal para testes de integração completos que requerem o contexto completo da aplicação.
- @AutoConfigureMockMvc: Usada em combinação com
@SpringBootTestpara configurar e usarMockMvcem testes de integração. - @WebMvcTest: Focada em testes unitários da camada de controle, carregando apenas o necessário para testar os controllers.
Cada uma dessas anotações tem seu papel específico e deve ser escolhida com base no tipo de teste que você está realizando e nas necessidades da sua aplicação.
Referências
Anotação @SpringBootTest Anotação @AutoConfigureMockMvc Anotação @WebMvcTest