我有一个带有许多测试用例的Testsuite。现在每个测试用例包含可变数量的较小测试。这些较小的测试数量有所不同。我需要JUnit GUI来呈现每个较小的测试是否在Testcase下运行。这可能吗?使用不同的@Test方法为我提供了我想要的结构,但我不能动态地改变测试用例所需的这些@Test方法的数量。有什么想法吗?
答案 0 :(得分:0)
您是否看过JUnit参数化测试?
现在使用@Parameters注释,您可以迭代数据并更改每个测试的名称,如下所示:
@RunWith(value = Parameterized.class)
public class JunitTest {
private int number;
public JunitTest(int number) {
this.number = number;
}
@Parameters(name = "namestring")
public static Collection<Object[]> data() {
Object[][] data = new Object[][] { { 1 }, { 2 }, { 3 }, { 4 } };
return Arrays.asList(data);
}
@Test
public void simpleTest() {
System.out.println("Parameterized Number is : " + number);
}
}
namestring 是一个字符串,可以包含以下特殊占位符:
等等