機能が 1 つしかないコマンド インターフェイスがあります。
public <T> boolean isValid(Class<? extends T> subType,
Class<? extends T> superType);
このインターフェイスには、いくつかの実装があります (4 つまたは 5 つとしましょう)。これらすべての実装のテストケースを 1 つのテスト クラスに入れるのは良い考えですか?
機能が 1 つしかないコマンド インターフェイスがあります。
public <T> boolean isValid(Class<? extends T> subType,
Class<? extends T> superType);
このインターフェイスには、いくつかの実装があります (4 つまたは 5 つとしましょう)。これらすべての実装のテストケースを 1 つのテスト クラスに入れるのは良い考えですか?
すべてのテストを異なるクラスで同じパッケージ (メイン パッケージとは異なる) に保つことは、優れたプログラミング手法です。
将来、メイン コードを変更し、それに応じてクラスの変更をテストする場合は、変更を簡単に統合できます。
もう 1 つの重要な理由は、プロジェクトをビルドするときに、ビルド プロセスでテスト ケースを実行するオプションを提供できることです。テスト ケースが失敗すると、ビルドは失敗します。異なるテスト クラスの異なるメイン クラスのテスト関数を保持すると、テスト ケースの失敗が原因でビルドが失敗した場合に、何が問題なのかを把握するのに役立ちます。