junit参数化测试
时间: 2024-12-30 21:35:57 浏览: 6
JUnit 参数化测试是一种在单元测试中对一组或多组输入数据进行并行化的技术。它允许你为测试方法提供一系列预定义的参数组合,使得每个参数都会触发一次测试运行,从而极大地提高了测试覆盖度。通常,这通过`@Parameters`注解配合`@RunWith(Parameterized.class)`注解实现。
例如,在JUnit中,你可以定义一个数据源方法,该方法返回一个二维数组,每个内部数组表示一组测试参数。然后,你的测试方法会接收这些参数作为输入,进行相应的业务逻辑验证。这种方式非常适合于那些需要多次测试相似场景但参数不同的情况,比如不同日期、数值或用户输入的测试。
下面是一个简单的例子:
```java
@RunWith(Parameterized.class)
public class MyTest {
@Parameterized.Parameter
public String input;
@Parameterized.Parameter(1)
public int expectedOutput;
@Parameters
public static Collection<Object[]> data() {
return Arrays.asList(new Object[][]{
{ "test case 1", 42 },
{ "test case 2", 99 },
// 更多参数...
});
}
@Test
public void testMethod() {
assert assertEquals(expectedOutput, myFunction(input));
}
}
```
阅读全文