Working Effectively With Legacy Codeの 18章 My Test Code is in the way。
テストコードが邪魔だよ
ルール
- クラス命名規則(例:DBEngine)
- DBEngineTest (テストは DBEngine のファイルとすぐ近くになるように)
- FakeDBEngine (Fake は Fake で固まるように)
- TestingDBEngine (テストのためのサブクラスなど)
- テストの配置方法
- コードとテストは同じディレクトリが良いよ
- 感情的には別ディレクトリにしたいだろうけど
- コードとテストコードの行き来のコストやストレスは馬鹿に出来ないよ
- ディレクトリが違うと面倒