Pengujian Spring Boot
Pengujian Spring Boot: @SpringBootTest, @WebMvcTest, @DataJpaTest, MockMvc, TestRestTemplate, test slice
1Anotasi mana yang digunakan untuk memuat konteks Spring Boot lengkap pada pengujian integrasi?
Anotasi mana yang digunakan untuk memuat konteks Spring Boot lengkap pada pengujian integrasi?
Jawaban
@SpringBootTest memuat konteks aplikasi lengkap, termasuk semua bean dan auto-configuration. Anotasi ini digunakan untuk pengujian integrasi yang membutuhkan seluruh aplikasi. @WebMvcTest dan @DataJpaTest hanya memuat sebagian konteks (test slicing), sedangkan @ContextConfiguration adalah anotasi tingkat lebih rendah untuk mengonfigurasi konteks secara manual (lebih kompleks).
2Apa itu test slicing di Spring Boot?
Apa itu test slicing di Spring Boot?
Jawaban
Test slicing berarti memuat hanya bagian tertentu dari konteks Spring untuk mempercepat pengujian. Misalnya, @WebMvcTest hanya memuat komponen web (controller, filter), sedangkan @DataJpaTest hanya memuat repository JPA. Ini mengurangi waktu startup dan meningkatkan performa pengujian dengan menghindari pemuatan bean yang tidak perlu.
3Anotasi mana yang digunakan untuk menguji hanya sebuah controller Spring MVC?
Anotasi mana yang digunakan untuk menguji hanya sebuah controller Spring MVC?
Jawaban
@WebMvcTest dirancang khusus untuk menguji controller Spring MVC. Anotasi ini hanya memuat komponen web (controller, @ControllerAdvice, filter, interceptor) dan mengonfigurasi MockMvc secara otomatis. @SpringBootTest akan memuat seluruh konteks (tidak perlu untuk menguji satu controller), @DataJpaTest untuk repository, dan @RestClientTest untuk menguji klien HTTP (RestTemplate, WebClient).
Apa tujuan anotasi @MockBean dalam Spring Boot Test?
Objek mana yang digunakan untuk mensimulasikan permintaan HTTP dalam pengujian dengan @WebMvcTest?
+27 pertanyaan wawancara
Topik wawancara Spring Boot lainnya
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging dengan SLF4J & Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Penanganan Eksepsi
Bean Validation
Dasar-Dasar Spring Data JPA
Entitas JPA & Relasi
Kueri JPA
Spring Data Repositories
Dasar-Dasar Spring Security
Spring Boot Actuator
Unit Testing dengan JUnit & Mockito
Profiles dan Environment
RestTemplate & WebClient
Async & Scheduling
Caching dengan Spring
Spring WebFlux (Reactive)
Transaksi Spring
Autentikasi & otorisasi tingkat lanjut
JWT & Keamanan Stateless
OAuth2 & Authorization Server
Spring Boot & Docker
Microservices dengan Spring
Spring Cloud Config
Optimasi Performa
GraalVM Native Images
Kuasai Spring Boot untuk wawancara berikutnya
Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.
Mulai gratis