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
450
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
Unlearn Product Development - Unleashed Edition
lemiorhan
PRO
2
210
Unlearn Product Development
lemiorhan
PRO
8
1.6k
Unlearn OOP: Back To Origins
lemiorhan
PRO
6
3.1k
Unlearn Modularity
lemiorhan
PRO
6
550
The Disturbing Truth: Why Do Most Software Projects Suck?
lemiorhan
PRO
4
350
Yazılım Geliştirme Hakkında Okulda Bahsedilmeyenler
lemiorhan
PRO
2
680
Things About Software Development Not Taught In School
lemiorhan
PRO
5
220
Fixing The Typos in Softvare Devlopment - DevFest İzmir 2023
lemiorhan
PRO
3
280
SOLID Is Dead, Long Live SOLID
lemiorhan
PRO
5
790
Other Decks in Technology
See All in Technology
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
27
14k
OpenID BizDay#17 みんなの銀行による身元確認結果の活用 / 20250219-BizDay17-KYC-minna-no-ginko
oidfj
0
210
エンジニアが加速させるプロダクトディスカバリー 〜最速で価値ある機能を見つける方法〜 / product discovery accelerated by engineers
rince
4
510
プロダクトエンジニア構想を立ち上げ、プロダクト志向な組織への成長を続けている話 / grow into a product-oriented organization
hiro_torii
1
320
OpenID Connect for Identity Assurance の概要と翻訳版のご紹介 / 20250219-BizDay17-OIDC4IDA-Intro
oidfj
0
460
株式会社EventHub・エンジニア採用資料
eventhub
0
4.3k
LINE NEWSにおけるバックエンド開発
lycorptech_jp
PRO
0
120
設計を積み重ねてシステムを刷新する
sansantech
PRO
0
130
ソフトウェアエンジニアと仕事するときに知っておいたほうが良いこと / Key points for working with software engineers
pinkumohikan
1
130
大規模アジャイルフレームワークから学ぶエンジニアマネジメントの本質
staka121
PRO
2
140
表現を育てる
kiyou77
1
230
わたしがEMとして入社した「最初の100日」の過ごし方 / EMConfJp2025
daiksy
12
3.5k
Featured
See All Featured
RailsConf 2023
tenderlove
29
1k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
4 Signs Your Business is Dying
shpigford
182
22k
GitHub's CSS Performance
jonrohan
1030
460k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Building Adaptive Systems
keathley
40
2.4k
The Invisible Side of Design
smashingmag
299
50k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Why Our Code Smells
bkeepers
PRO
336
57k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
250
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
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