JUnit4のアノテーションについて
おおもととなる1つのテストケース(仮にA.class)内に対して、
@RunWith(Enclosed.class)アノテーションで、
複数のテストケース(仮にB.class、C.class)を、入れ子記述しています。
その中にある1つのテストケース(仮にB.class)で、
さらに、
@RunWith(Parameterized.class)アノテーションと、
@Parametersアノテーションを利用して、
テスト対象メソッドに渡す引数と期待値だけが異なるテスト
(戻り値はCollectionで、Collectionの要素はObject配列とする)
を複数回実行しています。
上記した1つのテストケース(仮にB.class)で、
Eclipse3.6上のJUnit4におきましては、
その1つのテストケースだけで
単体実行した際には、
全ての結果がOKになります。
しかし、
他にも存在している複数のテストケース(仮にC.class)とまとめて、
おおもととなる1つのテストケース(仮にA.class)から
実行した際には、上記した1つのテストケース(仮にB.class)
でのみ、以下のJUnit4エラーが発生しています。
java.lang.Exception;
No runnable methods
at java.lang.reflect.Constructor.newInstance(UnKnown Source)
このエラーを解消するには、どうすればよいでしょうか?
(コンストラクタをインスタンス時のエラーのようでしたので、
以下に、コンストラクタ箇所を添付しておきます)
public B(
final String str_inTestData1, final int int_inTestData2,
final int int_inTestData3, final int int_inCnt) {
this.m_str_inTestData1 = str_inTestData1;
this.m_int_inTestData2 = int_inTestData2;
this.m_int_inTestData3 = int_inTestData3;
this.m_int_inCnt = int_inCnt;
}
@RunWith(Enclosed.class)アノテーション内に対して、
ネストで作成したサブのテストケース用クラスに対しては、
@RunWith(Parameterized.class)アノテーションと、
@Parametersアノテーションを利用することは
出来ないというような制限などがあるのでしょうか?
以上です。よろしくお願いします。
お礼
返事が送れて申し訳ありませんでした。 このようなエスケープ文字をどう扱うんだろうとまた別のところで悩んでいました^^; 問題は解決したので一安心です。 ありがとうございました