Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
MatelliNight - TDD
Search
Mickael Metesreau
December 17, 2013
Programming
0
81
MatelliNight - TDD
Mickael Metesreau
December 17, 2013
Tweet
Share
More Decks by Mickael Metesreau
See All by Mickael Metesreau
Fear the Ponies
mmetesreau
0
160
Alt.Net Talks - Make type system great again
mmetesreau
0
91
Alt.Net Talks - The Actor Model
mmetesreau
0
52
Lunch & Learn - Property Based Testing
mmetesreau
0
64
Betclic Dojo - Where is Fluffy?
mmetesreau
0
75
Mini training - EventStore
mmetesreau
0
69
Alt.Net Talks - EdgeJs
mmetesreau
0
300
Betclic Dojo - Extreme Carpaccio
mmetesreau
0
130
Betclic Dojo - Game of life
mmetesreau
0
41
Other Decks in Programming
See All in Programming
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
190
並行開発のためのコードレビュー
miyukiw
0
150
AI時代の認知負荷との向き合い方
optfit
0
160
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.9k
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
「ブロックテーマでは再現できない」は本当か?
inc2734
0
990
CSC307 Lecture 02
javiergs
PRO
1
780
CSC307 Lecture 03
javiergs
PRO
1
490
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
180
CSC307 Lecture 01
javiergs
PRO
0
690
組織で育むオブザーバビリティ
ryota_hnk
0
180
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
190
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
66
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
The SEO identity crisis: Don't let AI make you average
varn
0
240
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
140
How GitHub (no longer) Works
holman
316
140k
The Pragmatic Product Professional
lauravandoore
37
7.1k
Paper Plane
katiecoart
PRO
0
46k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
280
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
KATA
mclloyd
PRO
34
15k
Transcript
Test Driven Development All Code is Guilty Until Proven Innocent
Développer c’est souvent… Ajouter des fonctionnalités Modifier des fonctionnalités Supprimer
des fonctionnalités
Développer c’est toujours… Modifier votre code encore et encore Modifier
votre architecture encore et encore
Et vérifier que ça marche… En lisant le code ???
A la main ???
L’Automatisation des Tests Acteur, Action, Assertion Rapidité, Indépendance, Reproductibilité
Ecrire des tests, ce n’est pas… Un autre travail Perdre
du temps Mettre au chômage l’équipe qualité
Ecrire des tests, c’est… Concevoir Maitriser son code Gagner en
productivité
TDD, Késako ? « Technique de développement de logiciel qui
préconise d'écrire les tests unitaires avant d'écrire le code source d'un logiciel. » Wikipédia
Et Réellement ? Coder, Déboguer, Tester Tester, Coder, Refactorer
WTF ???
Cycle de Développement
Ecrire un Test Ecrire assez de code pour démontrer un
échec
Ecrire une Fonctionnalité Ecrire assez de code pour faire passer
le test
Refactoriser Améliorer le design sans changer le comportement
Les Règles Le minimum de code de test, tu écriras
Le minimum de code de production, tu écriras Jamais du code de production avant celui de test, tu n’écriras
Le code est terminé quand… Tous les tests passent Il
y a le moins de code possible Chaque idée distincte est exprimée Tout ce qui est dit est dit une seule fois
La Conception Emergente « Un bon design ne vient pas
en premier, il apparait »
Tooling Gestionnaire de version Intégration continue Framework de test Couverture
de test
Press Start To Begin Coding Dojo