
Cours 2 (partie 2) — Tests unitaires, TDD et revue de code
Prérequis au cours R5A08
Objectifs
Poursuivre l'approfondissement des tests unitaires et de la méthode TDD nécessaires au cours R5A08, et découvrir les principes de la revue de code comme pratique de qualité logicielle.
Notions couvertes
- Approfondissement des tests unitaires — cas limites, couverture, tests significatifs
- La méthode TDD — poursuite du cycle Rouge → Vert → Refactor sur des cas pratiques
- La revue de code — objectifs, bonnes pratiques, apport pour la qualité et l'apprentissage collectif

Cours 2 (partie 1) — Tests unitaires, Pattern AAA, introduction à la méthode TDD
Prérequis au cours R5A08
Objectifs
Acquérir les bases pratiques de l'écriture de tests unitaires nécessaires au cours R5A08 : structurer un test selon le pattern AAA (Arrange, Act, Assert), et découvrir les principes fondateurs de la méthode TDD (Test-Driven Development).
Notions couvertes
- Les tests unitaires — objectifs, périmètre, écriture d'un cas de test
- Le pattern AAA — Arrange (préparation), Act (exécution), Assert (vérification)
- Introduction au TDD — cycle Rouge → Vert → Refactor, intérêt de tester avant de coder

Cours 0 — Introduction à la qualité de développement et aux tests logiciels
Prérequis au cours R5A08
Objectifs
Poser les bases conceptuelles nécessaires au cours R5A08 : comprendre ce qu'est la qualité logicielle, pourquoi elle importe dans un projet de développement, et découvrir les principes fondamentaux des tests logiciels comme moyen de la garantir.
Notions couvertes
- La qualité de développement — définition, enjeux (fiabilité, maintenabilité, évolutivité), coût d'une non-qualité
- Les tests logiciels — pourquoi et quand tester, niveaux de test (unitaire, intégration, fonctionnel)
- Le lien qualité / tests — comment les tests contribuent à la qualité globale d'un projet logiciel

Remise à niveau — Git : zones de travail, commits, branches, synchronisation
Prérequis au cours R5A08
Objectifs
Consolider les bases de Git indispensables au bon déroulement du cours R5A08 : compréhension des zones de travail (working directory, staging, repository), gestion des commits et des branches, exclusion de fichiers via
.gitignore, et synchronisation avec un dépôt distant sur GitHub.Notions couvertes
- Les trois zones de Git — working directory (zone de travail), staging area (index), repository (dépôt local)
- Les commits — création, historique, bonnes pratiques de messages de commit
- Les branches — création, bascule, rôle dans un flux de travail collaboratif
- Le fichier
.gitignore— exclusion de fichiers et répertoires du suivi de version - La synchronisation avec GitHub — dépôt distant,
push,pull, mise en relation entre dépôt local et dépôt distant

Remise à niveau — Interfaces, JUnit, Principes SOLID
Prérequis au cours R5A08
Objectifs
Garantir un socle technique homogène sur trois notions indispensables à la bonne compréhension des enseignements du cours R5A08 : les interfaces en Java, les tests unitaires avec JUnit, et les principes SOLID.
Important
Ce module est un prérequis obligatoire au cours R5A08. Les étudiants doivent en avoir pris connaissance — et procéder si besoin à leur remise à niveau personnelle — avant le démarrage des séances.
Notions couvertes
- Les interfaces (Java) — définition, implémentation, contrats d'interface, polymorphisme
- Les tests unitaires avec JUnit — écriture de tests, conventions de nommage, annotations, assertions
- Les principes SOLID — les cinq principes fondamentaux de la conception orientée objet et leur mise en œuvre pratique
Note
Support à consulter en autonomie. Aucune évaluation n'est associée à ce module ; il conditionne cependant la bonne compréhension des séances ultérieures.