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
Effective Signals in Angular 19+: Rules and Helpers
manfredsteyer
PRO
0
110
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
1
120
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
3
330
[JAWS-UG横浜 #76] イケてるアップデートを宇宙いち早く紹介するよ!
maroon1st
0
500
103 Early Hints
sugi_0000
1
250
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
2
290
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
170
開発者とQAの越境で自動テストが増える開発プロセスを実現する
92thunder
1
200
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
170
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
110
Security_for_introducing_eBPF
kentatada
0
110
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
210
Featured
See All Featured
Side Projects
sachag
452
42k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Faster Mobile Websites
deanohume
305
30k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Gamification - CAS2011
davidbonilla
80
5.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.3k
Mobile First: as difficult as doing things right
swwweet
222
9k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Optimising Largest Contentful Paint
csswizardry
33
3k
A better future with KSS
kneath
238
17k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
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