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
Conway's Law Never Lies
lemiorhan
PRO
1
190
Fixing The Typos in Engineering Culture
lemiorhan
PRO
3
140
Everything You Know About Agile Is Wrong
lemiorhan
PRO
4
2.3k
Unlearn Product Development - Unleashed Edition
lemiorhan
PRO
5
390
Unlearn Product Development
lemiorhan
PRO
10
1.8k
Unlearn OOP: Back To Origins
lemiorhan
PRO
6
3.3k
Unlearn Modularity
lemiorhan
PRO
8
900
The Disturbing Truth: Why Do Most Software Projects Suck?
lemiorhan
PRO
5
450
Yazılım Geliştirme Hakkında Okulda Bahsedilmeyenler
lemiorhan
PRO
2
830
Other Decks in Technology
See All in Technology
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
170
FinTech SREのAWSサービス活用/Leveraging AWS Services in FinTech SRE
maaaato
0
130
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
190
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
260
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
480
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2k
SRE Enabling戦記 - 急成長する組織にSREを浸透させる戦いの歴史
markie1009
0
130
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
5.6k
StrandsとNeptuneを使ってナレッジグラフを構築する
yakumo
1
120
今日から始めるAmazon Bedrock AgentCore
har1101
4
410
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
260
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
970
Featured
See All Featured
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
200
Information Architects: The Missing Link in Design Systems
soysaucechin
0
780
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
37k
Designing for Performance
lara
610
70k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
330
Facilitating Awesome Meetings
lara
57
6.8k
Building Adaptive Systems
keathley
44
2.9k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
180
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.6k
What's in a price? How to price your products and services
michaelherold
247
13k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
730
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