Formation Spring Boot : API REST, sécurité, Kafka et Docker

Tests Spring Boot : unitaires et intégration avec JUnit, Mockito, Testcontainers

Tests unitaires et d’intégration avec JUnit 5, Mockito et Testcontainers : une stratégie de tests fiable pour vos applications Spring Boot.

Réservé aux abonnés

Introduction

Les tests Spring Boot combinent tests unitaires rapides et tests d’intégration au plus près de la production. Une application professionnelle doit être testée en profondeur. Spring Boot fournit un écosystème complet pour tester les couches web, services, persistence, sécurité et intégration.

Avec TestContainers, vos tests s’exécutent contre de vraies bases Docker : PostgreSQL, Kafka, Redis, MongoDB… C’est la norme moderne dans les équipes matures et les pipelines CI/CD fiables.

Lexique essentiel

JUnit 5

Moteur de test moderne utilisé avec Spring Boot.

MockMvc

Test d’API REST sans serveur externe.

@SpringBootTest

Démarre tout le contexte Spring pour les tests d’intégration.

@DataJpaTest

Test spécialisé pour la couche JPA/Hibernate.

TestContainers

Isolation complète via des bases Docker démarrées automatiquement.

Embedded Databases

H2 pour les tests rapides (mais limité pour les projets entreprise).

1. Tests Unitaires : Services & logique métier

Les tests unitaires doivent être purs, rapides, et ne pas dépendre de Spring.

Exemple

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;

class PriceCalculatorTest {

    @Test
    void shouldCalculateTotalPrice() {
        var calc = new PriceCalculator();
        assertEquals(200, calc.total(100, 2));
    }
}

👉 Aucun Spring, aucune base → tests ultra rapides.

La suite de cette leçon est réservée aux abonnés

Les 3 premières leçons de chaque formation sont gratuites. Débloquez la suite pour continuer.