下記勉強会にてSlimでUnit Testを試してみたことを発表した内容。 Fizz Buzz APIを作成してみた。 第152回 PHP勉強会@東京 https://phpstudy.doorkeeper.jp/events/156332
ソースコード https://github.com/nagauta/try-unit-test
SlimでUnit Testする
View Slide
アジェンダ● 概要● 動機● 課題● テスト観点● コード● ありがとうございます
概要● FizzBuzzをAPIで作成する● 上記の機能を保証するテストコードを書いてみる
● 他のプロジェクトでテスト駆動しているので僕もやりたい● 現在担当しているアプリケーションを安全に開発できるようにしたい● t-wadaさんへ罪悪感(エンジニアとしてこれでいいのかという葛藤)動機
課題:FizzBuzz APIを作成する● 3の倍数かつ5の倍数のときには、"Fizz Buzz"を返す● 3の倍数のときには、"Fizz"を返す● 5の倍数のときには、"Buzz"を返す→上記の機能を保証するテストコードを書いてみる
単体テスト観点● 入力値が3の倍数かつ5の倍数のときにはFizzBuzzを返すこと● 入力値が3の倍数のときにはFizzを返すこと● 入力値が5の倍数のときにはFizzBuzzを返すこと● 入力値が数字ではない時は例外を返すこと● 入力値がない場合は例外を返すこと
コードhttps://github.com/nagauta/try-unit-test
まとめ● テストを書きながらやると実装時のここどうするんだっけという気付きが得られる● Slimフレームワークをきちんと理解していきたい● テスト駆動の本を読み進めたい● まずは次か次々のチケットで担当のアプリにテストコードを入れていきたい
リファレンス● Slim-Skeleton● Slim Framework● 「テスト書いてないとかお前それ〜」が私の代名詞になるまで。テスト駆動開発とともに歩んだキャリア● PHPUnit テストコードの書き方【入門】
ありがとうございます!