67

多くのテストの基本クラスがあり、すべてのテストに必要ないくつかのヘルパー メソッドがあります。

それ自体にはテストはありませんが、JUnit (Eclipse の場合) はそのテスト ランナーを呼び出しており、テストする方法がないと文句を言っています。

このクラスを無視するにはどうすればよいですか?

dummyTest問題を解決するメソッドを追加できることはわかっていますが、それはすべての子クラスにも表示されます。

提案?

4

6 に答える 6

100

@Ignore注釈に使用します。クラスでも活躍します。これを見てください:

@Ignore public class IgnoreMe {
                        @Test public void test1() { ... }
                        @Test public void test2() { ... }
                }

また、テスト メソッドを含むクラスに @Ignore でアノテーションを付けると、含まれているテストは実行されません。

ソース: JUnit JavaDoc

于 2009-01-20T15:12:12.553 に答える
32

注意として、無視する理由を常に提示することをお勧めします。

@Ignore("This test will prove bug #123 is fixed, once someone fixes it")

私は、ant からテストを実行するときに使用される junit xml レポート フォーマッタに、無視されたカウント (およびその理由) と、成功、失敗、およびエラーがいつか含まれるようになることを願っています。

于 2009-01-29T13:05:39.903 に答える
23

JUnit 4では、クラスabstractを作成するだけで十分です。うまくいかない場合は、使用している JUnit のバージョンを再確認してください。

これは、これがテストのほんの一部であるという意図も伝えます。

また、JUnit がクラス内のテストを「無視」としてカウントするのを防ぎます (したがって、無視されたテストの最終的なカウントは期待どおりになります)。

または、クラスの名前を変更します。ほとんどのランナーは、クラス名を使用して、どのクラスがテストで、どのクラスがヘルパーであるかを判別します。デフォルト設定の Maven では、基本クラスTestTestCase( http://maven.apache.org/surefire/maven-surefire-plugin/examples/包含-除外.html )

于 2013-03-26T15:27:40.743 に答える