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
68
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
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
6
1.6k
PSR-15 はあなたのための ものではない? - phpcon2024
myamagishi
0
140
フロントエンドのディレクトリ構成どうしてる? Feature-Sliced Design 導入体験談
osakatechlab
8
4.1k
Semantic Kernelのネイティブプラグインで知識拡張をしてみる
tomokusaba
0
180
rails statsで大解剖 🔍 “B/43流” のRailsの育て方を歴史とともに振り返ります
shoheimitani
2
940
テストケースの名前はどうつけるべきか?
orgachem
PRO
0
140
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
180
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
850
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
140
暇に任せてProxmoxコンソール 作ってみました
karugamo
2
720
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
210
【re:Growth 2024】 Aurora DSQL をちゃんと話します!
maroon1st
0
780
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
Code Review Best Practice
trishagee
65
17k
Adopting Sorbet at Scale
ufuk
73
9.1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
A Tale of Four Properties
chriscoyier
157
23k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
A better future with KSS
kneath
238
17k
Reflections from 52 weeks, 52 projects
jeffersonlam
347
20k
KATA
mclloyd
29
14k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Speed Design
sergeychernyshev
25
670
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
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