小井土です。
> 矢崎です。
>
> 最初の2つのご指摘は、私もすごく納得がいきます。このように整理して
> いただけると、とてもわかりやすいですね。ご教示ありがとうございます。
参考になれば、幸いです。
> 最後の点については、テストのためだけでないということが確実である、
> という場合に限り賛成ですが、もう少し考えてみたいと思います。
テストのためのメソッドについてですが、これの問題として
「テストのためのメソッドが正常に動作しても、本当の意味でテストしたことになら
ない」
があるのではないでしょうか。
極論すれば、テストのためのメソッドによるテストは、テストのためのメソッドのテ
ストは
できるが、本来の機能のテストをしたことと同値ではないといえるのではないでしょ
うか。
インスタンスの整合性チェックメソッドは、インスタンスの整合性が大丈夫なのかを
確認するものなので、目的はあくまでも整合性チェックなので、この機能をテスト
としても利用するので良いとする。
メソッドも目的(機能)をどこのするかということになると思いますが、歯止めが
どこにあるのかは明確でない部分があると思います。
いかがでしょうか。