テスト”ケース”駆動開発 で手戻りをなくそう
by
Kawahara Ryoma
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
テスト”ケース”駆動開発 で手戻りをなくそう
Slide 2
Slide 2 text
自己紹介 - 川原遼馬 (@ryohma0510) - 株式会社DeNA 2020年入社 - Rails/Golang/GCP - 今はRailsをGolangにリプレイスするプロジェクト - Keyball44ユーザー
Slide 3
Slide 3 text
どうすれば効率よく開発できるか
Slide 4
Slide 4 text
手戻りを少なくしたい
Slide 5
Slide 5 text
最初にテストケースを洗い出そう
Slide 6
Slide 6 text
エッジケースが一番手戻りを発生させる - エッジケースは設計に影響を与えやすい - エッジケースは最後に気づきやすい
Slide 7
Slide 7 text
テストケース駆動で、低コストでエッジケースに気づく ロジックを箇条書きで整理する テストケースを箇条書きで整理する 簡単に図を書く テストケースを箇条書きで整理する 関数を用意してコメントだけ書く テストケースを箇条書きで整理する 最後にプログラミング
Slide 8
Slide 8 text
こんな経験はありませんか? レビューで指摘されたエッジケースの対応のために、 コードをほぼ全て書き直す
Slide 9
Slide 9 text
こういうのはコードを書き終わった後に気づく 普段は少ないリクエスト数だけど、ある日だけ10倍になる 普通はバッチ処理失敗しないけど、失敗した時は途中から再実行したい 廃止された機能の過去データでのみ発生する状態がある
Slide 10
Slide 10 text
じゃあ最初に設計がっつりやればいいやん
Slide 11
Slide 11 text
書いてからしか気付けない
Slide 12
Slide 12 text
書いてから気づく vs 書いてしまうと修正が大変
Slide 13
Slide 13 text
結論:最初にテストケースを洗い出そう ロジックを箇条書きで整理する テストケースを箇条書きで整理する 簡単に図を書く テストケースを箇条書きで整理する 関数を用意してコメントだけ書く テストケースを箇条書きで整理する 最後に実装する