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
180
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
360
Innovative Thinking
isa
1
91
We are ThoughtWorks
isa
0
280
Hala Bireysellik mi?
isa
1
75
Agile Estimation & Agile Metrics
isa
1
260
Microservices
isa
13
530
Configuration Management
isa
2
140
Assuring Quality in Borsa Istanbul
isa
2
77
Software Development in the Wild
isa
4
120
Other Decks in Programming
See All in Programming
イベントストーミングのはじめかた / Getting Started with Event Storming
nrslib
1
450
The Missing Link in Angular's Signal Story: Resource API and httpResource
manfredsteyer
PRO
0
120
ノーコードからの脱出 -地獄のデスロード- / Escape from Base44
keisuke69
0
700
CSC509 Lecture 10
javiergs
PRO
0
170
Feature Flags Suck! - KubeCon Atlanta 2025
phodgson
0
110
Nitro v3
kazupon
2
300
2026年向け会社紹介資料
misu
0
170
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
1.5k
DartASTとその活用
sotaatos
2
120
「10分以内に機能を消せる状態」 の実現のためにやっていること
togishima
1
290
퇴근 후 1억이 거래되는 서비스 만들기 | 내가 AI를 사용하는 방법
maryang
2
560
CSC509 Lecture 13
javiergs
PRO
0
250
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
463
33k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
118
20k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
[RailsConf 2023] Rails as a piece of cake
palkan
57
6.1k
Side Projects
sachag
455
43k
Writing Fast Ruby
sferik
630
62k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Speed Design
sergeychernyshev
32
1.2k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
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