テストのジレンマ
- 簡単な問題は自動テストを書くまでもない。
- 難しい問題は自動テストを書くのが難しい。
テストが書き辛い問題ほど、自動テストの価値は上がる。同時に自動テストを作成するコストも増えていく。ならば、自動テストが有効な状況なんてないのではないか?
なんて思ったりもするけれど、この問題は簡単に解決出来る。書いていることを裏返せば、テストを書くまでもないような問題のテストコストは非常に低い。そのコストが無視出来る程度に十分小さくすることができれば、「テストを書くまでもない」と思った時には既にテストを書き終えていることになる。
問題が複雑化して手に負えなくなる前に、小さい、見通しの良い状態でテストを書いておけば、その領域をテストに任せることが出来る。つまり、手に負えなくなってから「テストはコストが高い!」とか言うのをやめればいい。
半ば夢物語に思えるかもしれないし、適用出来ない領域も存在するけれど、全ての問題がそんなもののはずがない。一部がそうだからといって全体を諦めるようなのは、銀の弾丸が無いと狼男に甘んじて喰われるようなものだ。
私はそんなの御免だ。