Tests unitaires avec JUnit et Mockito
Tests unitaires avec JUnit 5, Mockito pour les mocks, assertions, @Mock, @InjectMocks, test doubles
1Qu'est-ce que JUnit 5 Jupiter ?
Qu'est-ce que JUnit 5 Jupiter ?
Réponse
JUnit 5 Jupiter est le moteur de tests moderne qui remplace JUnit 4, offrant une API améliorée avec des annotations modernisées et de nouvelles fonctionnalités. Jupiter apporte des assertions plus riches, un meilleur support des tests paramétrés et une architecture modulaire permettant d'étendre le framework facilement. Utiliser Jupiter permet de bénéficier des fonctionnalités Java 8+ comme les lambdas dans les assertions.
2Quelle annotation marque une méthode comme test dans JUnit 5 ?
Quelle annotation marque une méthode comme test dans JUnit 5 ?
Réponse
L'annotation @Test de JUnit 5 identifie une méthode comme un cas de test qui sera exécuté par le runner. Contrairement à JUnit 4 où @Test acceptait des paramètres comme expected ou timeout, JUnit 5 utilise des assertions dédiées comme assertThrows. Chaque méthode @Test doit être autonome et tester un comportement spécifique de manière isolée.
3Quelle est la différence entre @BeforeEach et @BeforeAll ?
Quelle est la différence entre @BeforeEach et @BeforeAll ?
Réponse
@BeforeEach s'exécute avant chaque méthode de test pour initialiser un état propre, tandis que @BeforeAll s'exécute une seule fois avant tous les tests de la classe. @BeforeEach est idéal pour créer des mocks ou objets frais pour chaque test, garantissant l'isolation. @BeforeAll nécessite une méthode statique et sert pour des initialisations coûteuses partagées entre tous les tests.
Quelle assertion vérifie l'égalité entre deux valeurs ?
Comment vérifier qu'une exception est lancée dans JUnit 5 ?
+27 questions d'entretien
Autres sujets d'entretien Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging avec SLF4J et Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Gestion des exceptions
Validation avec Bean Validation
Spring Data JPA - Les bases
Entités JPA et relations
Requêtes JPA
Spring Data Repositories
Spring Security - Les bases
Spring Boot Actuator
Tests Spring Boot
Profiles et Environment
RestTemplate et WebClient
Async et Scheduling
Caching avec Spring
Spring WebFlux (Reactive)
Transactions Spring
Authentification et autorisation avancées
JWT et sécurité stateless
OAuth2 et Authorization Server
Spring Boot et Docker
Microservices avec Spring
Spring Cloud Config
Optimisation des performances
GraalVM Native Images
Maîtrise Spring Boot pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement