- Cours pratique
- Informatique
- Oracle
Formation Test Driven Development (TDD) en Java
Apprendre à concevoir et développer du code Java de qualité en appliquant la démarche TDD

- Durée
- 3 jours
- Niveau
- Intermédiaire
- Modalités
- Présentiel / Distanciel
Description de la formation Test Driven Development Java
Qu’est-ce que le Test-Driven Development ?
Le Test-Driven Development (TDD) est une approche de développement agile consistant à écrire les tests avant le code. Elle repose sur le cycle Red – Green – Refactor, garantissant la qualité, la maintenabilité et l’évolutivité du code. TDD permet d’améliorer la conception des applications tout en réduisant les régressions.
Pourquoi suivre une formation TDD en Java ?
Cette formation permet de maîtriser la méthodologie TDD et les outils de test modernes dans l’écosystème Java (JUnit, TestNG, Mockito, etc.). Les participants apprendront à écrire des tests unitaires efficaces, à refactoriser du code, à intégrer le TDD dans les cycles agiles et à automatiser les tests dans une pipeline CI/CD.

Objectifs pédagogiques
À l'issue de cette formation Test Driven Development Java, vous aurez acquis les connaissances nécessaires pour :
- Comprendre et appliquer le cycle Red-Green-Refactor du TDD
- Écrire des tests unitaires robustes et expressifs en Java
- Intégrer les tests dans le cycle de développement agile et dans une chaîne CI/CD
- Utiliser JUnit, TestNG, Mockito et les outils d’intégration continue (Maven, Jenkins, GitLab CI)
- Améliorer la qualité du code par le refactoring et la conception pilotée par les tests
Objectifs opérationnels
Savoir concevoir, développer et maintenir des applications Java en appliquant les principes du Test-Driven Development.
Programme
Contenu du cours, module par module
6 modules
- Principes fondamentaux du TDD
- Le cycle Red – Green – Refactor
- Avantages et limites de l’approche
- Bonnes pratiques et pièges à éviter
- Introduction à JUnit et configuration de l’environnement de test
Travaux pratiques
Description : Écriture d’un premier test simple, création de la classe correspondante, refactoring et vérification du test. Comment garantir un cycle rapide et efficace ?
- Anatomie d’un test unitaire (Arrange, Act, Assert)
- Structuration et nommage des tests
- Tests paramétrés et assertions avancées
- Gestion des exceptions et des dépendances
- Introduction à Mockito pour le mock et le stub
Travaux pratiques
Description : Création d’une série de tests pour une classe métier. Comment isoler les dépendances à l’aide de mocks ?
- TDD vs BDD (Behavior Driven Development)
- Écriture des tests comme spécifications vivantes
- Lien avec Scrum et XP (Extreme Programming)
- Gestion des tests dans le backlog produit
- Communication entre développeurs et testeurs
Travaux pratiques
Description : Écriture de tests basés sur des user stories. Comment transformer une exigence fonctionnelle en test automatisé ?
- Organisation des tests dans Maven / Gradle
- Tests unitaires vs d’intégration
- Exécution automatisée des tests (Jenkins, GitLab CI)
- Analyse de couverture (JaCoCo, SonarQube)
- Bonnes pratiques pour les rapports de test
Travaux pratiques
Description : Création d’un pipeline Jenkins intégrant exécution, rapport et qualité de code. Comment déclencher automatiquement les tests à chaque commit ?
- Identifier les mauvaises odeurs de code (code smells)
- Techniques de refactoring et outils dans les IDE
- Principes SOLID et conception pilotée par les tests
- Tests de non-régression et couverture évolutive
- TDD et architectures modernes (microservices, APIs REST)
Travaux pratiques
Description : Refactoring d’une classe existante avec tests à l’appui. Comment faire évoluer la conception sans casser le comportement fonctionnel ?
- Démarche TDD appliquée à un mini-projet complet
- Gestion des dépendances et build automatisé
- Intégration continue et validation finale
- Retours d’expérience et recommandations
Travaux pratiques
Description : Développement complet d’une fonctionnalité selon le cycle TDD, intégrée dans un pipeline CI. Quelles métriques suivre pour évaluer la qualité du code ?
Travaux pratiques
Environ 60 % de pratique. Les participants écrivent, exécutent et refactorisent des tests dans un environnement Java complet (JUnit, Mockito, Maven, IDE Eclipse ou IntelliJ). Les exercices s’appuient sur un projet fil rouge, illustrant la mise en œuvre du TDD dans un contexte agile réel.
Programme mis à jour le 22/01/2026
Public concerné
Ce cours s'adresse aux développeurs Java, chefs de projet techniques, testeurs ou architectes souhaitant adopter une démarche de développement pilotée par les tests.

Prérequis
Une bonne connaissance préalable du langage Java et des concepts de programmation orientée objet sont nécessaires pour suivre cette formation. Vous pouvez les acquérir à travers la formation Java, les fondamentaux (JJDC).
J’évalue mes connaissances pour vérifier que je dispose des prérequis nécessaires pour profiter pleinement de cette formation en faisant le test de prérequis.
Faire le testFinancement
Cette formation peut être prise en charge par votre entreprise, seule ou avec l’appui de son opérateur de compétences. Nous fournissons le devis et les pièces attendues par l’OPCO.
Formations liées
- Test Logiciel : métiers, concepts et outils Réf. GSTL1 jourFondamentalProchaine session : 16 oct.990 €
- Tester des applications Angular avec les librairies Karma, Jasmine et ProtractorRéf. AKJP2 joursIntermédiaireProchaine session : 30 nov.1 590 €
- TestLink : Bâtir un référentiel de TestsRéf. GRTL2 joursFondamental1 690 €
- Tests des applications mobiles smartphone et tablette (IOS et Android)Réf. GTAM3 joursFondamental