Formation « TDD, comme à la maison - Paris

Transcription

Formation « TDD, comme à la maison - Paris
Formation « TDD, comme à la maison »
Plan de cours
Titre de la formation :
« TDD, comme à la maison »
Durée :
2 jours
Objectifs :
Le but de cette formation est double.
• D'une part, il s'agit d'offrir aux participants l'occasion d'apprendre à appliquer TDD sur un
contexte qui leur est propre.
• D'autre part, il s'agit de les entraîner à développer des stratégies de mise en œuvre dans
d'autres contextes - ceux des autres participants.
Ainsi, chacun aura l'occasion de découvrir les principes et les techniques liées à TDD que l'on peut
toujours appliquer - quels que soit la difficulté du problème, le niveau de coopération du langage,
ou la stabilité des outils.
Public visé :
Il s'agit d'une formation concrète, sans glamour ni paillette, dans laquelle on écrit du code et on en
lit encore plus. Une formation donnée par des développeurs expérimentés, pour des développeurs
expérimentés, qui veulent apprendre à systématiser leur mise en œuvre de TDD dans des
contextes variés. Chaque session de formation accueille au maximum 8 participants.
Description du cours :
Le développement piloté par les tests (TDD) est une pratique décrite depuis maintenant plus de dix
ans. Le principe sous-tendant cette activité, qui consiste à motiver chaque modification de
comportement du code par un test automatisé en échec, est désespérément simple à
comprendre : coder un test qui échoue, ajouter le code le plus simple qui fait passer le test,
nettoyer, puis recommencer. Dans la pratique toutefois, nous remarquons à quel point il est difficile
de dérouler ce cycle – soit parce que l'architecture du code existant rend malaisé l'ajout d'un test
pertinent, soit parce que le code à ajouter pour faire passer le test est loin d'être trivial, soit encore
parce que le code n'est pas assez couvert par des tests pour envisager de nettoyer sans casser
quelque chose.
Le diable, comme à son habitude, se cache dans les détails. Parce qu'il est impossible de couvrir
toutes les situations et tous les langages (en particulier ceux du futur), les documents décrivant la
mise en œuvre de TDD se basent la plupart du temps sur des modèles abstraits, ou des cas
d'exemples nécessairement simplificateurs. Après l'euphorie du démarrage, l'apprenti-TDD se
trouve souvent rapidement démuni, face à son code et ses particularités.
On pourrait imaginer qu'il est plus simple de mettre en œuvre TDD sur un projet neuf, sans code
hérité (legacy code) et pourtant – le vertige de la page blanche rend souvent tout aussi difficile
l'écriture des premiers tests que des suivants.
Cette formation est conçue pour examiner en groupe des cas concrets, en particulier ceux que les
participants voudront bien apporter avec eux. Alternant exploration et rétrospection, les participants
découvriront petit à petit les éléments qui constituent la « pensée par les tests », et les tactiques à
mettre en œuvre suivant des contextes variés.
Plan du cours :
• Quel prochain(s) test(s) écrire : du cas particulier à la généralisation
• Tester en continu
• Concevoir les interfaces comme points d'entrée des tests
• Ajouter des tests pour corriger des anomalies
• Tester des interactions avec un système distant
• Tester des applications graphiques
Instructeurs :
Emmanuel Gaillot intervient en tant qu’accompagnateur d’équipes, animateur de réunions,
formateur, programmeur extrême, codexhibitionniste et agitateur public. Par le biais d'armes nonconventionnelles, il aide les équipes produisant du logiciel à être plus efficaces dans leur travail,
plus fières de leurs résultats et plus heureuses en général. Emmanuel est un spécialiste de la
gestion de projet incrémentale, des structures émergentes et des espaces de co-apprentissage. Il
s'intéresse aussi de manière déraisonnable à la programmation fonctionnelle en général et à
Haskell en particulier. Un orateur régulier à de nombreuses conférences sur l’Agilité, Emmanuel
organise également la conférence annuelle Agile Open France. Il est l’un des fondateurs du Dojo
de développement de Paris, et un de ses membres assidus depuis sa création il y a six ans.
Emmanuel est un des associés et co-gérant de la société /ut7.
Polyglotte, accro au dernier degré des tests automatisés, célèbre pour ses sessions endiablées au
Dojo Développement de Paris, Jonathan Perret est un programmeur dans l'âme. Il développe du
logiciel depuis plus de dix ans, mais sa lecture du livre "XP explained" en 2004 a profondément
changé sa manière d'appréhender le métier de développeur - et ce n'était que le début. Jonathan
est à la recherche constante d'occasions de montrer, partager et vivre pleinement la joie
qu'apporte l'acte de programmation. Il est l'un des associés de /ut7.

Documents pareils