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
Types of Coding with Automated Tests
Search
Lemi Orhan Ergin
PRO
November 16, 2018
Technology
17
460
Types of Coding with Automated Tests
In these slides, I compare different styles of coding styles with automated tests written.
Lemi Orhan Ergin
PRO
November 16, 2018
Tweet
Share
More Decks by Lemi Orhan Ergin
See All by Lemi Orhan Ergin
Fixing The Typos in Engineering Culture
lemiorhan
PRO
3
90
Everything You Know About Agile Is Wrong
lemiorhan
PRO
4
2.2k
Unlearn Product Development - Unleashed Edition
lemiorhan
PRO
5
350
Unlearn Product Development
lemiorhan
PRO
10
1.7k
Unlearn OOP: Back To Origins
lemiorhan
PRO
6
3.2k
Unlearn Modularity
lemiorhan
PRO
8
830
The Disturbing Truth: Why Do Most Software Projects Suck?
lemiorhan
PRO
5
410
Yazılım Geliştirme Hakkında Okulda Bahsedilmeyenler
lemiorhan
PRO
2
790
Things About Software Development Not Taught In School
lemiorhan
PRO
5
280
Other Decks in Technology
See All in Technology
HonoとJSXを使って管理画面をサクッと型安全に作ろう
diggymo
0
170
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカタログのリリースサイクルを高速化する
shuta13
3
190
AI駆動で進める依存ライブラリ更新 ─ Vue プロジェクトの品質向上と開発スピード改善の実践録
sayn0
1
270
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
14k
オブザーバビリティが育むシステム理解と好奇心
maruloop
1
930
Observability — Extending Into Incident Response
nari_ex
1
160
ローカルLLMとLINE Botの組み合わせ その2(EVO-X2でgpt-oss-120bを利用) / LINE DC Generative AI Meetup #7
you
PRO
1
150
JSConf JPのwebsiteをGatsbyからNext.jsに移行した話 - Next.jsの多言語静的サイトと課題
leko
2
180
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
44k
スタートアップの現場で実践しているテストマネジメント #jasst_kyushu
makky_tyuyan
0
120
「最速」で Gemini CLI を使いこなそう! 〜Cloud Shell/Cloud Run の活用〜 / The Fastest Way to Master the Gemini CLI — with Cloud Shell and Cloud Run
aoto
PRO
1
170
ソフトウェアエンジニアの生成AI活用と、これから
lycorptech_jp
PRO
0
890
Featured
See All Featured
Being A Developer After 40
akosma
91
590k
Raft: Consensus for Rubyists
vanstee
140
7.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
The Pragmatic Product Professional
lauravandoore
36
7k
Embracing the Ebb and Flow
colly
88
4.9k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
Statistics for Hackers
jakevdp
799
220k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
A designer walks into a library…
pauljervisheath
209
24k
Transcript
types of coding automated tests with lemi orhan ergin, agile
software craftsman @ craftbase
CODE TEST REFACTOR Test Driven Development TEST FAIL TEST PASS
START
CODE Refactoring is skipped to be faster Increased duplication in
code Long methods We have to clean our mess TEST FAIL TEST PASS Tested Mess Based Development TEST START
Refactoring is skipped to be faster Increased duplication in code
Long methods We have to clean our mess TEST FAIL TEST PASS Test First Then Write Everything Based Development TEST START CODE CODE CODE CODECODECOD ODE
CODE TEST FAIL TEST PASS TEST FAIL Failed test guaranteed
Can mask ignorance of domain Dummy-Test First Development TEST update same TEST REFACTOR START
CODE START TEST REFACTOR TEST PASS No failing tests Useful
for exploring Losing focus on design Mock misuse Too much refactoring required Code First Development
CODE START TEST REFACTOR TEST PASS Uncovered bugs Hard to
write tests Bored programmers Lower test quality Test Last Development CODE CODE CODECODECODE CODE
CODE TEST REFACTOR TEST PASS START TEST TEST TEST TEST
TEST TEST TEST TEST TEST TEST FAIL TEST Allows planning for future code Loss of focus Harder to code against Test Everything First Development
CODE TEST REFACTOR TEST PASS START TEST FAIL Large, bri!le
setup methods Slow tests High level tests People hate testing Huge Setup Based Development SETUP
CODE SCENARIO REFACTOR Acceptance Test Driven Development TEST PASS START
TEST TEST FAIL SCENARIO FAIL SCENARIO PASS Increased focus Focus on requirements Do also the right thing