Objectifs pédagogiques
- Mettre en oeuvre les principes fondammentaux et les bonnes pratiques du TDD
- Utiliser le Framework de test JUnit dans une approche TDD
- Mettre en oeuvre du TDD en présence de code hérité (legacy)
- Pratiquer le refactoring d'un code développé en TDD.
Modalités et moyens pédagogiques
Formation délivrée en présentiel ou distanciel* (e-learning, classe virtuelle, présentiel à distance).
Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :
- Ordinateurs Mac ou PC (sauf pour les cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
- Environnements de formation installés sur les postes de travail ou en ligne
- Supports de cours et exercices
En cas de formation intra sur site externe à M2i, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatique...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.
* nous consulter pour la faisabilité en distanciel
** ratio variable selon le cours suivi
Niveau requis
Avoir une pratique professionnelle de Java.
Public concerné
Développeurs, responsables tests, chefs de projets, responsables qualité.
Programme
Le test dans le processus de développement
- Processus, qualité, tests
- Types de tests
- Architectures de test
- TDD et Extreme Programming (XP)
Frameworks de tests automatisés
- Les frameworks de test
- Bonnes pratiques associées aux frameworks de test
Principes fondamentaux du TDD
- Le cycle de développement du TDD
- Stratégies de Test First
- Stratégies pour faire passer les tests
Ecrire du code testable
- Composition plutôt qu'héritage
- Eviter le code statique
- Inverser les dépendances
Eléments mis à la disposition du rédacteur de tests
- Assertions
- Tests d'échec
- Tests paramétrés sur les types et les valeurs
- Les matchers
Techniques pour organiser les tests de codes complexes
- Organisation des classes de test
- Organisation du code de test
Le refactoring en TDD
- Quelques "mauvaises odeurs"
- Techniques de refactoring en TDD
- Les design patterns
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation