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
How Much Should We Test?
Search
Michael Cheng
March 09, 2017
Programming
1
210
How Much Should We Test?
Presented at SP Tech Talk
Michael Cheng
March 09, 2017
Tweet
Share
More Decks by Michael Cheng
See All by Michael Cheng
Intro to GraphQL Workshop
miccheng
0
130
Prioritizing Technical Debt
miccheng
0
180
JuniorDevSG - Intro to Coding Dojo
miccheng
0
170
Intro to Web Development with PHP - Lesson 1
miccheng
0
140
Engineers.SG Volunteers Training (4 Aug 2018)
miccheng
0
99
Introduction to PHPConf.Asia 2018
miccheng
0
760
What about Ruby on Rails?... from a PHP Guy
miccheng
0
160
Engineers.SG Volunteers Training (July 2017)
miccheng
0
120
Concourse CI in the Wild
miccheng
0
250
Other Decks in Programming
See All in Programming
DSPy入門 Pythonで実現する自動プロンプト最適化 〜人手によるプロンプト調整からの卒業〜
seaturt1e
1
710
PostgreSQL を使った快適な go test 環境を求めて
otakakot
0
540
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
260
文字コードの話
qnighy
44
17k
エンジニアの「手元の自動化」を加速するn8n 2026.02.27
symy2co
0
150
Unity6.3 AudioUpdate
cova8bitdots
0
130
ふつうの Rubyist、ちいさなデバイス、大きな一年
bash0c7
0
920
「抽象に依存せよ」が分からなかった新卒1年目の私が Goのインターフェースと和解するまで
kurogenki
0
110
20260315 AWSなんもわからん🥲
chiilog
2
150
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
280
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
5
970
Claude Code Skill入門
mayahoney
0
350
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
How to Think Like a Performance Engineer
csswizardry
28
2.5k
Un-Boring Meetings
codingconduct
0
220
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
170
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.8k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.5k
Done Done
chrislema
186
16k
Technical Leadership for Architectural Decision Making
baasie
3
290
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
550
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
Transcript
HOW MUCH SHOULD WE TEST? Or how to stop hating
your tests
GOALS OF TEST SUITE • Tests should be thorough •
Tests should be stable • Tests should be fast • Tests should be few (minimal)
TEST DRIVEN DEVELOPMENT • We use test cases to guide
the design of our code • 2 approaches to testing - Inside Out and Outside In • Outside In - Use integration tests to guide you • Inside Out - Build & test individual components, integrate later
None
None
Object under test
Object under test Incoming Messages
Object under test Incoming Messages Outgoing Messages
Object under test Incoming Messages Outgoing Messages
Object under test Incoming Messages Outgoing Messages Send to self
Object under test Incoming Messages Outgoing Messages Send to self
Message Types:
Object under test Incoming Messages Outgoing Messages Send to self
Query Message Types:
Object under test Incoming Messages Outgoing Messages Send to self
Command Query Message Types:
MESSAGE TYPES • Query: Returns something / changes nothing •
Command: Returns nothing / changes something Object under test Incoming Messages Outgoing Messages Send to self Command Query
None
None
None
None
None
None
RESOURCES • “The Magic Tricks of Testing” - Sandi Metz
http://confreaks.tv/videos/railsconf2013- the-magic-tricks-of-testing • “Working Effectively with Unit Tests” - Jay Fields https://leanpub.com/wewut