Faites comme plus de 400 développeurs avant vous, formez vous au TDD et boostez votre carrière!

Que vais-j'apprendre?

Savoir utiliser le Test Driven Development sur les projets réels afin de livrer un code de qualité avec des tests maintenables et par conséquent pouvoir livrer le logiciel fréquemment en production. Retrouvez le plaisir du développement grâce au TDD ! Vous saurez écrire des tests maintenables. Couvrir du code non testé avec tests. Refactorer pour une bien meilleure qualité de code. Travailler en TDD dans le contexte professionnel. Évaluer et concevoir la stratégie de test de son équipe. Plus généralement vous aurez des notions de design logiciel essentiels à votre progression et votre capacité à architecturer correctement une application

Description et déroulement

TDD sur code neuf
  • Introduction au cycle TDD avec un live démo
  • Exercice des participants
  • Challenge : Comment ajouter de la fonctionnalité sans reécrire les tests existants
  • Challenge : Rendre ses tests lisibles
  • Introduction à la pyramide des tests
  • "Ecouter les tests"

Mocks et stubs
  • Apprendre à manipuler un outil de mock (Mockito, Sinon, PhpUnit, ...)
  • Tester des méthodes void
  • Pièges et bonne pratiques de mocking

TDD et code legacy
  • Couvrir du code existant avec tests, refactorer pour lisibilité puis améliorer encore sa conception grâce aux indications des tests. Techniques: Extraire et surcharger, introduire paramètre, tester par la gauche, refactorer par la droite
  • Couverture de code, comment pourquoi, bonnes pratiques

TDD avec dépendances non testables
  • Architecture testable, Architecture héxagonale
  • Construire du code en TDD en présence de code non testable, tels que les webservices externes et les bases de données.
  • Comment tester le "non testable" quand même.
  • Découper en plusieurs suites de test
  • Tester en présence d'un frame-work

Prérequis et public visé

Cette formation vise les développeurs confirmés ayant une bonne maîtrise d’au moins un langage de programmation (orienté objet ou fonctionnel), en terme de syntaxe, environnement de travail (nous pouvons vous aider sur Java, JS/TS, C#, PHP et Python). La formations contiennent une part importante de pratique. Elles sont réalisées avec 4 à 10 personnes, pour nous permettre d’adapter le déroulement de la formation et de contextualiser les exercices, en fonction des participants et de leurs spécificités, tout en garantissant l'acquisition des compétences visées par la formation.