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
Hisashi Kamezawa
January 24, 2018
Programming
0
930
Assert First
Hisashi Kamezawa
January 24, 2018
Tweet
Share
More Decks by Hisashi Kamezawa
See All by Hisashi Kamezawa
What we learned from code review
hisas
7
1.8k
Other Decks in Programming
See All in Programming
Crafting a Own PHP - ウキウキ手作りミニマリストPHP
uzulla
4
1.1k
IntelliJ IDEA を知らなかった 自分に教えたい小ネタ集 / IntelliJ IDEA Hints for My Past Self
mackey0225
3
150
Enhancing Applications with Accessibility API
kishikawakatsumi
3
850
品質とスピードを両立: TypeScriptの柔軟な型システムをバックエンドで活用する
kosui
4
840
チームでモデリングを育てるうえで 考えたこと・気づいたこと / Cultivating Modeling in Teams: Thoughts and Insights
mackey0225
5
1.7k
20240301_cocone_EMゆるミートアップvol6_LT資料
cocone
0
310
品質が高いコードって何?Rev2.1
ickx
1
490
プロンプトエンジニアリング入門
tomokusaba
2
970
ここ1~2年くらいで 使えるようになった(主要ブラウザーの最新版 がすべて対応した ) ウェブの新機能について ランダムに喋る!
myzkyy
9
6.4k
Material 3で Material 2ぽい見た目にする
numeroanddev
2
250
WasmOS: Wasmを実行する自作Microkernel
riru
0
370
LLMチャットボットのアプリケーション設計Tips
os1ma
4
650
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
19
1.6k
Keith and Marios Guide to Fast Websites
keithpitt
407
22k
How to train your dragon (web standard)
notwaldorf
71
5.1k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
8
8.2k
Designing with Data
zakiwarfel
94
4.8k
A better future with KSS
kneath
230
16k
The Invisible Customer
myddelton
114
12k
Designing on Purpose - Digital PM Summit 2013
jponch
109
6.4k
What's in a price? How to price your products and services
michaelherold
236
11k
Product Roadmaps are Hard
iamctodd
43
9.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
28
5.9k
The Cost Of JavaScript in 2023
addyosmani
13
3.7k
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 による恩恵 思考が整理され、問題をシンプルに捉えることができる → 複雑なテストを書くときに良さそう → 逆に簡潔に書けるテストや既存のテストに似たテストに無理に使う必要はない
ご清聴ありがとうございました