Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Assert First

Assert First

E25af22e13a85e8a14cfbe66780061c4?s=128

Hisashi Kamezawa

January 24, 2018
Tweet

Transcript

  1. Assert First 亀澤尚志 (@hisas) 2018/01/24

  2. 自己紹介 - 亀澤尚志 (Kamezawa Hisashi) - @hisas - 2017年度入社新卒 -

    フィヨルドインターン卒 - Ginza.rbにたまに出没
  3. 本日お話しすること - Assert First との出会い - Assert First とは? -

    Assert First をオススメする理由
  4. 本日お話しすること - Assert First との出会い - Assert First とは? -

    Assert First をオススメする理由
  5. None
  6. None
  7. None
  8. None
  9. ペアプロでやったこと ① 要件定義 ユーザー検索を名前のあいまい検索で実装 ② TODO リストの作成

  10. ペアプロでやったこと ③ テストを書く - 何が達成されていれば良いかをまず考えるため最後の行から埋めていく - RSpecでは visit から入るのではなく expect

    から書くイメージ ④ 機能を実装
  11. 本日お話しすること - Assert First との出会い - Assert First とは? -

    Assert First をオススメする理由
  12. アサーションを最初に書こう

  13. いつアサーションを書くべきだろうか——最初に書こう - システム構築はどこから始めるべきだろうか。システム構築が終わったらこうなる、 というストーリーを語るところからだ。 - 機能はどこから書き始めるべきだろうか。コードが書き終わったらこのように動く、と いうテストを書くところからだ。 - ではテストはどこから書き始めるべきだろうか。それはテストの終わりにパスすべき アサーションを書くところからだ。

    参考文献 Kent Beck 著 和田卓人 訳(2017) 「テスト駆動開発」
  14. 本日お話しすること - Assert First との出会い - Assert First とは? -

    Assert First をオススメする理由
  15. Assert First による恩恵 思考が整理され、問題をシンプルに捉えることができる → 複雑なテストを書くときに良さそう → 逆に簡潔に書けるテストや既存のテストに似たテストに無理に使う必要はない

  16. ご清聴ありがとうございました