~/questoes/programacao
Em Spring Boot, existem diferentes anotações para testar partes específicas da aplicação. A @DataJpaTest é especializada em testar isoladamente a camada de persistência, carregando apenas componentes JPA como repositórios e entidades, sem precisar carregar todo o contexto da aplicação.
@DataJpaTest é a anotação ideal para testar repositórios e entidades de forma isolada e rápida. Ela carrega apenas o necessário para JPA funcionar, deixando de fora controllers, serviços e configurações globais, tornando os testes mais ágeis.
@SpringBootTest carrega o contexto completo da aplicação, incluindo todos os beans. É útil para testes de integração, mas muito pesada quando você quer testar apenas repositórios.
@UnitTest não é uma anotação oficial do Spring. Essa anotação não existe na framework; você pode estar confundindo com testes unitários puros (sem Spring) feitos com JUnit.
@DataJpaTest carrega apenas os componentes necessários para testar JPA: entidades, repositórios e banco de dados em memória. Isso torna os testes rápidos e focados na camada de persistência.
@RepositoryTest não é uma anotação padrão do Spring Boot. O nome parece lógico, mas a framework usa @DataJpaTest para esse propósito específico.