Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Feature. Tests. Implementation.
Search
Jay Hayes
April 26, 2017
Programming
0
67
Feature. Tests. Implementation.
Slides to accompany
https://github.com/iamvery/testing-workshop/releases/tag/v1
Jay Hayes
April 26, 2017
Tweet
Share
More Decks by Jay Hayes
See All by Jay Hayes
Build Elixir Phoenix
iamvery
0
73
Elixir in Elixir
iamvery
1
150
A Less Complex Web with Ratchet & Jank
iamvery
0
320
Ratchet & Jank
iamvery
0
190
Elixir in Elixir
iamvery
6
1.2k
Rubyist Does Swift
iamvery
0
87
Swift Introduction
iamvery
0
280
Data Integrity
iamvery
0
100
Pairing with tmux
iamvery
2
210
Other Decks in Programming
See All in Programming
JETLS.jl ─ A New Language Server for Julia
abap34
1
370
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
3k
AIコーディングエージェント(Manus)
kondai24
0
170
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
150
Developing static sites with Ruby
okuramasafumi
0
270
DSPy Meetup Tokyo #1 - はじめてのDSPy
masahiro_nishimi
1
160
MAP, Jigsaw, Code Golf 振り返り会 by 関東Kaggler会|Jigsaw 15th Solution
hasibirok0
0
230
20 years of Symfony, what's next?
fabpot
2
350
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
0
210
AIコードレビューがチームの"文脈"を 読めるようになるまで
marutaku
0
350
ZOZOにおけるAI活用の現在 ~モバイルアプリ開発でのAI活用状況と事例~
zozotech
PRO
8
5.5k
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
120
Featured
See All Featured
The Invisible Side of Design
smashingmag
302
51k
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.2k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Speed Design
sergeychernyshev
33
1.4k
A designer walks into a library…
pauljervisheath
210
24k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
How to Ace a Technical Interview
jacobian
280
24k
It's Worth the Effort
3n
187
29k
Transcript
@iamvery ♥ FEATURE. TESTS. IMPL.
@iamvery ♥ MATERIALS bit.ly/rc17tddv1 ✨ ✨ TDD: From Feature to
Tests to Implementation bit.ly/rc17tddlive
@iamvery ♥ FEATURE. TESTS. IMPL.
@iamvery ♥ bit.ly/rc17tddv1
@iamvery ♥ bit.ly/rc17tddv1 ✍
@iamvery ♥ bit.ly/rc17tddv1
@iamvery ♥ bit.ly/rc17tddv1
Jay Hayes https://iamvery.com — @iamvery
@iamvery ♥
None
We develop.
We teach.
We write.
@iamvery ♥ bit.ly/rc17tddv1 Why write tests?
@iamvery ♥ bit.ly/rc17tddv1 DEFINE DONE
@iamvery ♥ bit.ly/rc17tddv1 CONFI DENCE
@iamvery ♥ bit.ly/rc17tddv1 What types of tests are there?
@iamvery ♥ bit.ly/rc17tddv1 acceptance unit model system smoke integration load
@iamvery ♥ bit.ly/rc17tddv1 INTEGRATED. ISOLATED.
@iamvery ♥ bit.ly/rc17tddv1 INTEGRATED. Plays well with others.
@iamvery ♥ bit.ly/rc17tddv1 VERIFY BEHAVIOR
@iamvery ♥ bit.ly/rc17tddv1 SYSTEM
@iamvery ♥ bit.ly/rc17tddv1 ISOLATED. Lonely, like a wolf.
@iamvery ♥ bit.ly/rc17tddv1 DRIVE DESIGN
@iamvery ♥ bit.ly/rc17tddv1 Other names define purpose.
@iamvery ♥ bit.ly/rc17tddv1 Acceptance Tests acceptable behavior. “feature”
@iamvery ♥ bit.ly/rc17tddv1 Load Test system resilience. “pressure”
@iamvery ♥ bit.ly/rc17tddv1 Smoke Low coverage, high level “sanity”
@iamvery ♥ bit.ly/rc17tddv1 ETC.
@iamvery ♥ bit.ly/rc17tddv1 THEY’RE ALL INTEGRATED
@iamvery ♥ bit.ly/rc17tddv1 What about paradigms?
@iamvery ♥ bit.ly/rc17tddv1 TDD
@iamvery ♥ bit.ly/rc17tddv1 BDD
@iamvery ♥ bit.ly/rc17tddv1 ADD
@iamvery ♥ bit.ly/rc17tddv1 TBH
@iamvery ♥ bit.ly/rc17tddv1 IDC
@iamvery ♥ bit.ly/rc17tddv1 Methodology.
@iamvery ♥ bit.ly/rc17tddv1 Documentation.
@iamvery ♥ bit.ly/rc17tddv1 Communicate intent.
@iamvery ♥ bit.ly/rc17tddv1 You are here
@iamvery ♥ bit.ly/rc17tddv1 Ok, tell me what to do.
@iamvery ♥ bit.ly/rc17tddv1 STEP 1
@iamvery ♥ bit.ly/rc17tddv1 Acceptance ✍
@iamvery ♥ bit.ly/rc17tddv1 Integrated.
@iamvery ♥ bit.ly/rc17tddv1 User perspective.
@iamvery ♥ bit.ly/rc17tddv1 Make stuff up.
@iamvery ♥ bit.ly/rc17tddv1 Write the test you want.
@iamvery ♥ bit.ly/rc17tddv1 Last test to pass.
@iamvery ♥ bit.ly/rc17tddv1 STEP 2
@iamvery ♥ bit.ly/rc17tddv1 Run it.
@iamvery ♥ bit.ly/rc17tddv1 Listen.
@iamvery ♥ bit.ly/rc17tddv1 STEP 3
@iamvery ♥ bit.ly/rc17tddv1 Try to make it happy.
@iamvery ♥ bit.ly/rc17tddv1 Zoom in.
@iamvery ♥ bit.ly/rc17tddv1 Build units♻
@iamvery ♥ bit.ly/rc17tddv1 Isolated.
@iamvery ♥ bit.ly/rc17tddv1 GOTO 2
@iamvery ♥ bit.ly/rc17tddv1 …
@iamvery ♥ bit.ly/rc17tddv1 ✅
@iamvery ♥ bit.ly/rc17tddv1 BEWARE
@iamvery ♥ bit.ly/rc17tddv1 “NOOOPE”
@iamvery ♥ https://github.com/testdouble/contributing-tests/wiki/Testing-Pyramid
@iamvery ♥ bit.ly/rc17tddv1 TL;DR coupling
@iamvery ♥ bit.ly/rc17tddv1 OVER TESTING
@iamvery ♥ bit.ly/rc17tddv1
@iamvery ♥ bit.ly/rc17tddv1 SUPER POWERS +
@iamvery ♥ bit.ly/rc17tddv1 MORE PRODUCTIVE
@iamvery ♥ bit.ly/rc17tddv1 EASIER N THE BRAIN
@iamvery ♥ bit.ly/rc17tddv1 DEMO
QUEST IONS? @iamvery ♥ bit.ly/rc17tddv1
/ YOUR TURN @iamvery ♥ bit.ly/rc17tddv1
@iamvery ♥ bit.ly/rc17tddv1 YOUR FIRST TEST
QUEST IONS? @iamvery ♥ bit.ly/rc17tddv1
/ YOUR TURN @iamvery ♥ bit.ly/rc17tddv1
@iamvery ♥ bit.ly/rc17tddv1 NEW INTERFACE
QUEST IONS? @iamvery ♥ bit.ly/rc17tddv1
/ YOUR TURN @iamvery ♥ bit.ly/rc17tddv1
@iamvery ♥ bit.ly/rc17tddv1 GET REAL
QUEST IONS? @iamvery ♥ bit.ly/rc17tddv1
/ YOUR TURN @iamvery ♥ bit.ly/rc17tddv1
@iamvery ♥ bit.ly/rc17tddv1 WRAP IT
QUEST IONS? @iamvery ♥ bit.ly/rc17tddv1
/ YOUR TURN @iamvery ♥ bit.ly/rc17tddv1
@iamvery ♥ bit.ly/rc17tddv1 FAKE IT
QUEST IONS? @iamvery ♥ bit.ly/rc17tddv1
/ YOUR TURN @iamvery ♥ bit.ly/rc17tddv1
@iamvery ♥ bit.ly/rc17tddv1 INJECT IT
QUEST IONS? @iamvery ♥ bit.ly/rc17tddv1
@iamvery ♥ bit.ly/rc17tddv1 BONUS
@iamvery ♥