Spring Boot

Testowanie Spring Boot

Testowanie Spring Boot: @SpringBootTest, @WebMvcTest, @DataJpaTest, MockMvc, TestRestTemplate, test slice

30 pytań z rozmów·
Mid-Level
1

Której adnotacji użyć, aby załadować pełny kontekst Spring Boot w teście integracyjnym?

Odpowiedź

@SpringBootTest ładuje pełny kontekst aplikacji, w tym wszystkie beany i autokonfiguracje. Ta adnotacja jest używana w testach integracyjnych wymagających całej aplikacji. @WebMvcTest i @DataJpaTest ładują tylko część kontekstu (test slicing), natomiast @ContextConfiguration to adnotacja niższego poziomu do ręcznego konfigurowania kontekstu (bardziej złożona).

2

Czym jest test slicing w Spring Boot?

Odpowiedź

Test slicing polega na ładowaniu tylko określonej części kontekstu Spring, aby przyspieszyć testy. Na przykład @WebMvcTest ładuje tylko komponenty webowe (kontrolery, filtry), natomiast @DataJpaTest ładuje tylko repozytoria JPA. Zmniejsza to czas uruchamiania i poprawia wydajność testów, unikając ładowania zbędnych beanów.

3

Której adnotacji użyć, aby przetestować tylko kontroler Spring MVC?

Odpowiedź

@WebMvcTest jest zaprojektowany specjalnie do testowania kontrolerów Spring MVC. Ta adnotacja ładuje tylko komponenty webowe (kontrolery, @ControllerAdvice, filtry, interceptory) i automatycznie konfiguruje MockMvc. @SpringBootTest załadowałby cały kontekst (zbędne przy testowaniu pojedynczego kontrolera), @DataJpaTest służy do repozytoriów, a @RestClientTest do testowania klientów HTTP (RestTemplate, WebClient).

4

Do czego służy adnotacja @MockBean w Spring Boot Test?

5

Którego obiektu użyć do symulowania żądań HTTP w teście z @WebMvcTest?

+27 pytań z rozmów

Opanuj Spring Boot na następną rozmowę

Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.

Zacznij za darmo