テストがないと起こること
プログラミングの変更がしにくくなる
- 機能の改善や追加がしづらい
- リファクタリングがしづらい
- バージョンアップがしづらい
手動でやるとめんどくさいからテストコードを書いて、プログラムにテスト(チェック)してもらおう!
テストの種類
- ・単体テスト(Unit Test) : model
- ・結合テスト (Integration Tast): API (controller,request)
- ・システムテスト (System Test): E2E (ブラウザ)
テストの優先順位
WebAPI テスト : 比較的書きやすく、APIの最大出力の確認ができるコスパの高いテスト
E2E テスト : デザインの変更に弱く、動作が不安定で時間もかかるので後回しにされがちなテスト
テストはどこまで書くべきか
全てのテストを書くのは NG !!
時間は有限なので、必要なテストが何なのかを判断する必要がある