Objectifs pédagogiques
Comprendre les principes et apports du Test-Driven Development
Configurer un environnement de développement pour le TDD et connaître les outils
Maîtriser l’utilisation des doublures de tests (objets Mock, Stub…)
Utiliser les techniques de TDD sur des projets existants (refactoring et code legacy)
Mettre en œuvre un process TDD pour développer une application
Être en mesure d’incorporer les bonnes pratiques TDD au sein de son organisation
A qui s’adresse cette formation ?
Prérequis
Programme de formation
Introduction à la formation TDD : découvrir le développement piloté par les tests
Objectifs de la formation TDD, attentes des participants
Les différents types de tests logiciels : unitaires, d’intégration, fonctionnels…
Frameworks et outils pour l’automatisation des tests
Retour sur la démarche Agile et ses composants (user stories, kanban board, tâches, burndown chart…)
Qu’est-ce que le TDD ? Approche et principes fondamentaux
Cycles de développement
TDD et eXtreme Programming (XP)
Exemples de cas pratiques : présentation des stagiaires, du formateur ou de la formatrice et échanges sur les différents contextes professionnels. Discussions autour des bonnes et mauvaises pratiques de développement, démystification du TDD et échanges sur les perspectives d’application des acquis de la formation en entreprise.
Tests unitaires
Vue d’ensemble, principe et structure du test unitaire
Différences entre tests unitaires et tests d’intégration
La famille xUnit : JUnit, PHPUnit, PyUnit…
Les rôles des développeurs et testeurs dans le test unitaire
Exécuter des tests automatisés
Niveaux de tests
Exemples de cas pratiques : configuration de l’environnement de développement (IDE) et d’un projet, exécution de tests unitaires, découverte du framework JUnit et manipulation d’attributs de test pendant la formation TDD.
Techniques de doublure de tests
Les objets factices (ou fantaisie) et leur intérêt d’utilisation
Dummy, stub, fake, spy et mock : comprendre et utiliser les différentes méthodes
Les bibliothèques disponibles
Exemples de cas pratiques : utilisation d’un Mock pour simuler un appel de méthode, d’un Stub pour résoudre un problème de données de tests.
Code legacy et refactoring : quand, comment et pourquoi réécrire le code source d’un programme ?
La dette technique et ses conséquences
Les principales méthodes et le cycle du refactoring
Exemples de cas pratiques : détection de « bad smells », mise en application de différentes techniques de refactoring liées au TDD.
Mise en œuvre du TDD
L’intérêt de tester avant vs tester après
Par où commencer ? Revue des étapes de base
Le rythme du TDD : rouge, vert, refactor
Principes de conception
Patterns TDD (« Fake it ’til you make it », « Triangulate », « You ain’t gonna need it »…)
Antipatterns (« Succès inattendu d’un test », « Ecrire des tests trop grands »…)
Principes SOLID dans un projet TDD
Les différents styles de TDD
Exemples de cas pratiques : simulation d’un projet conduit en mode TDD, manipulation de patterns, pair-programming dans un cadre TDD avec la technique du ping-pong pair programming, mise en œuvre de divers outils.
Synthèse et retour sur les points clés de la formation TDD
En apprendre davantage sur TDD : Test-Driven Development
Le Test Driven Development (TDD) ou développement piloté par les tests est une méthode de développement centrée sur la conception de logiciel en y intégrant les tests avant le développement. Le principe de l’approche TDD est donc de concevoir un test avant même d’avoir écrit la totalité du code nécessaire pour réaliser le test. Cette manière de concevoir le développement permet de concevoir son code en ayant parfaitement clarifier ses spécifications. Dès lors, le code écrit par la suite est optimisé pour répondre aux attentes ce qui permet d’écrire un code propre et répondant parfaitement aux attentes. Notre formation Test Driven Development (TDD), vous permettra donc d’écrire du code propre, allant au plus vite à sa fonction.
L’intérêt de cette formation TDD – développement piloté par les tests – est donc notamment d’optimiser son code, en améliorant sa rapidité et sa qualité. Le second intérêt est qu’en réalisant du code orienté vers le test qui lui est associé, on peut facilement s’assurer, étape par étape, du bon fonctionnement du code.
Mais le TDD va même plus loin. Auparavant Test First Design (TFD), où on testait simplement avant de coder, le TDD va plus loin. En effet trois lois régissent désormais le Test Driven Development. Il s’agit de ne pouvoir écrire du code que lorsque l’on a réalisé un test qui échoue avec le code actuel. La loi 3 vient préciser que ce nouveau code vient donc uniquement permettre au test en échec de réussir. La seconde implique qu’on ne peut écrire qu’un seul test échouant à la fois.
Cette formation TDD vous apprendra toutes les meilleures pratiques de TDD ainsi que vous montrera comment améliorer le développement en suivant ces 3 lois. En réservant dès maintenant notre formation Test Driven Development, vous apprendrez à optimiser votre développement en écrivant un code particulièrement qualitatif et stable, en apprenant tous les us et coutumes du TDD. Notre formation est disponible sur place et en distanciel.
Améliorer la qualité de son logiciel avec notre formation TDD
Certains se poseront la question pourquoi se former au Test-Driven Development ? Nous vous répondrons qu’il est tout simplement important de comprendre que les tests sont nécessaires dans la production de logiciels. Ainsi avec notre formation TDD, vous allez apprendre en quelques heures à développer un logiciel fiable et performant. Approfondissez vos connaissances en participant aux nombreuses sessions de formation à distance que nous proposons afin de coller idéalement à votre emploi du temps. Sparks Formation vous offre aussi l’opportunité de privatiser un expert formateur en cours particulier ou bien pour votre entreprise pour consolider les compétences de vos collaborateurs.












































