Badge Développement

Testing et TDD

Pratique de base des équipes Agiles, le développement dirigé par les tests (TDD : Test Driven Development) est une technique de programmation simple, élégante et efficace, qui repose sur un cycle de feedback court : écrire un test – le faire passer – refactorer le code.  

: 3 jours

Gratuit

  • Du 07/07/2020 au 29/09/2020

  • Identifier les avantages de TDD sur les autres techniques de programmation (code puis T.U)
  • Développer une application simple avec TDD
  • Expliquer et illustrer les principes à l’œuvre dans cette démarche
  • Utiliser TDD sur un projet nouveau
  • Utiliser des techniques spécifiques de TDD sur un projet existant

Connaissance préalable d’un langage de programmation orienté objet


Connexion

  • Tour de table
  • Présentation des participants
  • Brainstorming : les pratiques de développement utilisées en entreprise
  • Les pièges à éviter lorsque l’on programme

Perception du tdd

  • Mythes du TDD
  • Réalité du TDD
  • Exercices pratiques
  • Tester unitairement produit
  • Concevoir un produit via les tests unitaires

Gestion des exceptions - refactoring

Définir un test

  • En génie logiciel
  • En TDD
  • Exercice pratique : compréhension d’un code de tests

Définir le test driven development

  • Mettre en évidence l’intention
  • Réfléchir avant chaque ligne de code
  • Bénéfice de la couverture de tests

Feedback et agilité

  • Notions de base
  • Exercice pratique : identifier tous les feedbacks que peut utiliser un développeur
  • Brève histoire du feedback entre le développeur et son code
  • Importance du feedback
  • Le coût croissant de correction des défauts
  • Information vs feedback
  • Exercice pratique : échanges sur des situations analogues où le soin porté à l’outil favorise la vitesse de production

Tdd et génie logiciel

  • Renversement du modèle industriel classique
  • Comparaison des modèles industriel et artisanal
  • Pratiques autour de la sphère TDD
  • Points d’attention
  • Obstacles à l’adoption de TDD

Bases de tdd : développement d’une application simple

  • Présentation générale
  • Exercice pratique : conception par carte responsabilités / collaboration
  • Pattern TDD : test list
  • Le cycle de TDD
  • Des règles simples
  • Pattern : Assert First

Trois patterns caractéristiques de tdd

  • Pattern TDD : "Fake it ‘til you make it"
  • Pattern TDD : "Triangulate"
  • Pattern TDD : "Obvious Implementation"
  • Pattern TDD : "Données de test"
  • Pattern TDD : "Tests isolés"

Connexion

  • Partager avec le groupe sa session de programmation / débogage la plus difficile

Principes de survie tdd

  • Pattern TDD : "Don’t Repeat Yourself"
  • Pattern TDD : "You Ain’t Gonna Need It"
  • Problème des dépendances extérieures
  • Pattern TDD : "Stub"
  • Pattern TDD : "Mock"

Développement d’une application (suite)

  • Développement d’une collaboration entre plusieurs classes (cycle de vie de l’application)
  • Développement d’une classe dépendante aux effets de bords (ex. : horloge système)
  • Développement d’une collaboration entre plusieurs classes (sessions multiples)
  • Développement d’une application connectée (serveur)
  • Développement d’une application connectée (client)


Nous utilisons des cookies à des fins statistiques et pour faciliter la navigation et le partage social.