Test unitari con JUnit e Mockito
Test unitari con JUnit 5, Mockito per i mock, assertion, @Mock, @InjectMocks, test double
1Che cos'è JUnit 5 Jupiter?
Che cos'è JUnit 5 Jupiter?
Risposta
JUnit 5 Jupiter è il motore di test moderno che sostituisce JUnit 4, offrendo un'API migliorata con annotazioni modernizzate e nuove funzionalità. Jupiter introduce asserzioni più ricche, un migliore supporto per i test parametrizzati e un'architettura modulare che consente di estendere facilmente il framework. Usare Jupiter permette di sfruttare le funzionalità di Java 8+ come le lambda nelle asserzioni.
2Quale annotazione contrassegna un metodo come test in JUnit 5?
Quale annotazione contrassegna un metodo come test in JUnit 5?
Risposta
L'annotazione @Test di JUnit 5 identifica un metodo come un caso di test che verrà eseguito dal runner. A differenza di JUnit 4, dove @Test accettava parametri come expected o timeout, JUnit 5 usa asserzioni dedicate come assertThrows. Ogni metodo @Test dovrebbe essere autonomo e testare un comportamento specifico in isolamento.
3Qual è la differenza tra @BeforeEach e @BeforeAll?
Qual è la differenza tra @BeforeEach e @BeforeAll?
Risposta
@BeforeEach viene eseguito prima di ogni metodo di test per inizializzare uno stato pulito, mentre @BeforeAll viene eseguito una sola volta prima di tutti i test della classe. @BeforeEach è ideale per creare mock o oggetti nuovi per ogni test, garantendo l'isolamento. @BeforeAll richiede un metodo statico ed è usato per inizializzazioni costose condivise tra tutti i test.
Quale asserzione verifica l'uguaglianza tra due valori?
Come verificare che venga lanciata un'eccezione in JUnit 5?
+27 domande da colloquio
Altri argomenti di colloquio Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging con SLF4J e Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Gestione delle eccezioni
Bean Validation
Fondamenti di Spring Data JPA
Entità JPA e relazioni
Query JPA
Spring Data Repositories
Fondamenti di Spring Security
Spring Boot Actuator
Testing in Spring Boot
Profiles e Environment
RestTemplate e WebClient
Async e Scheduling
Caching con Spring
Spring WebFlux (Reactive)
Transazioni Spring
Autenticazione e autorizzazione avanzate
JWT e sicurezza stateless
OAuth2 e Authorization Server
Spring Boot e Docker
Microservices con Spring
Spring Cloud Config
Ottimizzazione delle prestazioni
GraalVM Native Images
Padroneggia Spring Boot per il tuo prossimo colloquio
Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.
Inizia gratis