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
480
17
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
More Decks by Lemi Orhan Ergin
See All by Lemi Orhan Ergin
Rebirth of Software Craftsmanship in the AI Era
lemiorhan
PRO
5
2.9k
Conway's Law Never Lies
lemiorhan
PRO
1
330
Fixing The Typos in Engineering Culture
lemiorhan
PRO
3
200
Everything You Know About Agile Is Wrong
lemiorhan
PRO
4
2.5k
Unlearn Product Development - Unleashed Edition
lemiorhan
PRO
5
460
Unlearn Product Development
lemiorhan
PRO
10
1.9k
Unlearn OOP: Back To Origins
lemiorhan
PRO
6
3.4k
Unlearn Modularity
lemiorhan
PRO
8
960
The Disturbing Truth: Why Do Most Software Projects Suck?
lemiorhan
PRO
5
510
Other Decks in Technology
See All in Technology
Cursor Meetup Sapporo - Cursor物語 続編
cocacola917
0
150
モダンフロントエンド 開発研修
recruitengineers
PRO
4
610
QAエンジニア起点で進める、SmartHRにおける信頼性向上について
kaomi_wombat
1
140
サイバー捜査員研修(後半)
nomizone
1
850
Bits Agent Builder の⼊⾨と活⽤事例
nulabinc
PRO
0
110
Digitization部 紹介資料
sansan33
PRO
2
7.7k
20260807_第6回_関東kaggler会LT_claw系bot xangiと始める、"寂しくない" kaggle
sugupoko
0
260
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.2k
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
9
2.6k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
19k
制約理論(ToC)入門 2026版
recruitengineers
PRO
8
2.2k
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
From π to Pie charts
rasagy
0
270
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
370
Bash Introduction
62gerente
615
220k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
480
Discover your Explorer Soul
emna__ayadi
2
1.3k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
430
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
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