アプリケーションとテストの Java ソース コードをコンパイルし、アプリケーション クラスを計測し、JUnit テストを実行し、JUnit と Emma のコード カバレッジ レポートを生成する Ant ビルド ファイルがあります。JUnit タスクには、計測されたクラスへのパスが与えられます。
問題は、インターフェイスがインストルメント化されていないことです ( Emma FAQ ) が、テストでそれらを使用し、JUnit がそれらを見つけることができません。
私は2つの解決策を考えることができます:
- テストでインターフェイスを使用しないでください(インターフェイスへのプログラミングに反します-テストでカウントされますか?)
- インストルメント化されたクラスの横にインターフェイスをコピーします (インターフェイスへのパスをハードコーディングします)。
この問題にどのようにアプローチし、解決する必要がありますか?