次のようなパラメータ化されたJUnit4テストがたくさんあります。
@RunWith(Parameterized.class)
public class MyTestX {
private final MyParameter param;
public TestX(MyParameter param) {
this.param = param;
}
@Test
public void myTest() {
// Some test code
}
}
MyParameter の値がそれぞれ異なる、異なるテスト スイートからそれらを実行したいと考えています。
私は次のことを試しました:
@RunWith(Suite.class)
@SuiteClasses( { MyTest1.class, MyTest2.class, ... })
public class MyTestSuite1 {
@Parameters
public static Collection<Object[]> data() {
Object[][] data = {{ new MyParameter(1) )}};
return Arrays.asList(data);
}
}
しかし、それは機能しません。「クラス MyTestX に public static parameters メソッドがありません」というメッセージが表示されます。
テストケースの代わりにテストスイートからパラメータを指定する方法はありますか? 可能であれば、テストごと、テスト スイートごとに新しいクラスを作成することは避けたいと思います。