モジュールのテスト容易性を高く保つ
1. 原則
モジュールはテストしやすい構造に保つ
- モジュールはユニットテストしやすい構造でなければならない
- テストが困難なモジュールはテストが容易な構造に改修し、常にテストが容易な状態を保たなければならない
2. 根拠
修正コストを削減できる
- テストがしやすい事によってテストを手厚く維持することができる
- テストが手厚いことで修正時の回帰テストが容易になり、修正時のデグレも予防できる
- 結果的に保守性が向上する
テストしづらいモジュールは放置されがち
- テストが面倒なモジュールは手を入れることに心理的なハードルが生まれがちで、結果的に放置されることが多い
- 手を入れることがあっても、デグレを恐れて最小限の修正で済ませる選択が取られがちである
- 結果としてモジュールの品質は低いままに維持されることになる
3. 指針
モジュールを小さく保つ
- モジュール、特に関数/メソッドは小さく保つ
- 関数/メソッドの行数は最大でも20行を目処にする
- 長い関数は余計な複雑さを抱えていることが多く、テストもそれだけ面倒になりがちである
ユニットテストが容易な設計を目指す
4. 注意
参考資料