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
Assert First
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Hisashi Kamezawa
January 24, 2018
Programming
1.2k
0
Share
Assert First
Hisashi Kamezawa
January 24, 2018
More Decks by Hisashi Kamezawa
See All by Hisashi Kamezawa
What we learned from code review
hisas
7
2k
Other Decks in Programming
See All in Programming
PHP で mp3 プレイヤーを実装しよう
m3m0r7
PRO
0
280
「速くなった気がする」をデータで疑う
senleaf24
0
180
YJITとZJITにはイカなる違いがあるのか?
nakiym
0
220
Liberating Ruby's Parser from Lexer Hacks
ydah
2
1.1k
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
3
270
Radical Imagining - LIFT 2025-2027 Policy Agenda
lift1998
0
350
mruby on C#: From VM Implementation to Game Scripting (RubyKaigi 2026)
hadashia
2
420
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
3
280
ふりがな Deep Dive try! Swift Tokyo 2026
watura
0
220
Oxlintとeslint-plugin-react-hooks 明日から始められそう?
t6adev
0
270
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
940
SkillがSkillを生む:QA観点出しを自動化した
sontixyou
6
3.4k
Featured
See All Featured
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
270
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
260
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
130
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.4k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
350
Chasing Engaging Ingredients in Design
codingconduct
0
170
Leo the Paperboy
mayatellez
7
1.7k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
Rails Girls Zürich Keynote
gr2m
96
14k
Skip the Path - Find Your Career Trail
mkilby
1
110
Test your architecture with Archunit
thirion
1
2.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Transcript
Assert First 亀澤尚志 (@hisas) 2018/01/24
自己紹介 - 亀澤尚志 (Kamezawa Hisashi) - @hisas - 2017年度入社新卒 -
フィヨルドインターン卒 - Ginza.rbにたまに出没
本日お話しすること - Assert First との出会い - Assert First とは? -
Assert First をオススメする理由
本日お話しすること - Assert First との出会い - Assert First とは? -
Assert First をオススメする理由
None
None
None
None
ペアプロでやったこと ① 要件定義 ユーザー検索を名前のあいまい検索で実装 ② TODO リストの作成
ペアプロでやったこと ③ テストを書く - 何が達成されていれば良いかをまず考えるため最後の行から埋めていく - RSpecでは visit から入るのではなく expect
から書くイメージ ④ 機能を実装
本日お話しすること - Assert First との出会い - Assert First とは? -
Assert First をオススメする理由
アサーションを最初に書こう
いつアサーションを書くべきだろうか——最初に書こう - システム構築はどこから始めるべきだろうか。システム構築が終わったらこうなる、 というストーリーを語るところからだ。 - 機能はどこから書き始めるべきだろうか。コードが書き終わったらこのように動く、と いうテストを書くところからだ。 - ではテストはどこから書き始めるべきだろうか。それはテストの終わりにパスすべき アサーションを書くところからだ。
参考文献 Kent Beck 著 和田卓人 訳(2017) 「テスト駆動開発」
本日お話しすること - Assert First との出会い - Assert First とは? -
Assert First をオススメする理由
Assert First による恩恵 思考が整理され、問題をシンプルに捉えることができる → 複雑なテストを書くときに良さそう → 逆に簡潔に書けるテストや既存のテストに似たテストに無理に使う必要はない
ご清聴ありがとうございました