我有参数化的junit测试,我想对测试功能进行分组,以便在一个测试套件中运行一组,在另一个测试套件中运行另一组。
我试过的是这样的:
测试类:
@RunWith(Parameterized.class)
public class TestClass {
private int test;
public TestClass(int test){
this.test = test;
}
@Parameters
public static Collection<Object[]> data(){
return Arrays.asList(new Object[][]{{1},{1}});
}
@Test
@Category(A.class)
public void aTest(){
assertEquals(1, test);
}
@Test
@Category(B.class)
public void bTest(){
assertEquals(1, test);
}
}
测试套件:
@SuiteClasses({TestClass.class})
@RunWith(Categories.class)
@IncludeCategory(A.class)
public class Suite {
}
如果我注释测试类而不是方法,它就可以工作。但是,我想对函数进行分类而不是对测试类进行分类,当我尝试时出现以下错误:
Category annotations on Parameterized classes are not supported on individual methods
我怎样才能让它工作(不切换到 TestNG 或其他测试框架)?