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

TDDワイワイ会inXP祭り2018

Shuhei TAKASUGI
September 08, 2018

 TDDワイワイ会inXP祭り2018

2018.9.8 XP祭り2018でのワークショップで使用した資料です。

Shuhei TAKASUGI

September 08, 2018
Tweet

More Decks by Shuhei TAKASUGI

Other Decks in Programming

Transcript

  1. タイムライン •13:00 ~ 13:15 TDDとモブプログラミングの説明 •13:15 ~ 13:30 自己紹介/チーム分け •13:30

    ~ 14:30 ゆるゆるとモブプログラミング •14:30 ~ 14:50 ふりかえり !5
  2. テスト駆動開発 •テストファーストのアプローチ • テストを書く • 実装する • リファクタリングする •3ステップの繰り返し •

    Specification(仕様) • Generalization(一般化) • Design(設計) !9 ケント・ベック著 (新訳) オーム社, 2017 原著は2002
  3. TDDワイワイ会でのTDD • Uncle Bob (Robert Martin) による3つのルールに従う。 1. 失敗するユニットテストをパスするためだけにしか
 プロダクションコードを書いてはならない。

    2. 失敗させるのに十分なユニットテストが書けたら
 それ以上テストコードを書いてはならない。
 コンパイルエラーも失敗とみなす。 3. 1つのユニットテストをパスさせるのに十分なコードが書けた らそれ以上プロダクションコードを書いてはならない。 !12 “The Three Laws of TDD” http://butunclebob.com/ArticleS.UncleBob.TheThreeRulesOfTdd
  4. TDDワイワイ会でのテストの進め方 • ふるまいの具体例によって仕様を定めていく(Test First) • 実装から考えない • Step by step(一足飛びに考えない)

    • レッド(テストが失敗している状態)は早く抜ける • グリーン(テストが動作を保証している状態)は安心 !13
  5. TDDワイワイ会の必勝パターン •cyber-dojo.orgを使う • 無料のWeb REPL • いろんな言語環境がある • テストフレームワークがデフォルトで存在 •迷ったらFizzBuzz

    • 仕様が理解容易 • 2時間ぐらいでじっくりやるのにちょうどいい •背伸びするオススメの組み合わせ • 知ってるお題 × 知らない言語 • 知らないお題 × 知ってる言語 !18 http://www.cyber-dojo.org/