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
Test-Driven Design
Search
isa
January 08, 2013
Programming
2
160
Test-Driven Design
The main idea behind TDD, why it matters, and how to do it
isa
January 08, 2013
Tweet
Share
More Decks by isa
See All by isa
Introduction to Functional Programming
isa
2
350
Innovative Thinking
isa
1
82
We are ThoughtWorks
isa
0
220
Hala Bireysellik mi?
isa
1
69
Agile Estimation & Agile Metrics
isa
1
250
Microservices
isa
13
510
Configuration Management
isa
2
120
Assuring Quality in Borsa Istanbul
isa
2
67
Software Development in the Wild
isa
4
110
Other Decks in Programming
See All in Programming
watsonx.ai Dojo #6 継続的なAIアプリ開発と展開
oniak3ibm
PRO
0
170
chibiccをCILに移植した結果 (NGK2025S版)
kekyo
PRO
0
140
いりゃあせ、PHPカンファレンス名古屋2025 / Welcome to PHP Conference Nagoya 2025
ttskch
1
190
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
880
php-conference-japan-2024
tasuku43
0
430
Fixstars高速化コンテスト2024準優勝解法
eijirou
0
190
Fibonacci Function Gallery - Part 2
philipschwarz
PRO
0
210
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
570
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
630
Запуск 1С:УХ в крупном энтерпрайзе: мечта и реальность ПМа
lamodatech
0
960
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
420
DMMオンラインサロンアプリのSwift化
hayatan
0
190
Featured
See All Featured
Making Projects Easy
brettharned
116
6k
Speed Design
sergeychernyshev
25
740
Rails Girls Zürich Keynote
gr2m
94
13k
Bash Introduction
62gerente
610
210k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
How to train your dragon (web standard)
notwaldorf
89
5.8k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Writing Fast Ruby
sferik
628
61k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
39
1.9k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
19
2.3k
Transcript
Test-Driven Design for dummies
Agenda • What is TDD? • Why TDD? • For
the first time • More beginner style (tomorrow) • What about legacy? (on Friday)
Testing in General http://blogs.msdn.com/cfs-filesystemfile.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-32-02-metablogapi/8054.image_5F00_thumb_5F00_35C6E986.png
What is TDD • Test-Driven what? • They don’t show
you how to write software in school, ‘coz they don’t know either • How to be professional like this?
What is TDD • It’s actually one simple rule: •
Specify what the code should do, and make it happen • Repeat it! • It’s about how you want to use your unit • Tests are side-effects
Red-Green-Refactor RED GREEN REFACTOR
It’s THE Design http://blog.myedonline.com/wp-content/uploads/2012/06/trying_to_find_X.jpg simplicity really matters
Why TDD • Use your brain before your fingers •
Because you are not that smart, remember “dummies” ;) • It’s a safety-net • It helps you remember things, and why you do them • Out-of-the-box regression
Unless http://farm7.static.flickr.com/6193/6152609977_32902aa668.jpg You wanna be like him?
Unless or him?
Time We don’t have time to NOT write TESTS http://www.typemock.com/blog/2009/03/05/the-cost-of-test-driven-development/
Cost And these guys are from Micro$oft ;) http://www.typemock.com/blog/2009/03/05/the-cost-of-test-driven-development/
What About Feedback http://www.care-marketing-advice.com/wp-content/uploads/2012/07/fast-response-feedback-questionnaire.jpg
Is It Difficult • Not really? • It’s a discipline
• And still difficult? Then do it more often..
Let’s Practice