junit有参数怎么测试
时间: 2024-05-10 19:17:42 浏览: 73
在 JUnit 中,可以使用 `@RunWith(Parameterized.class)` 注解来指定参数化运行器。然后,需要创建一个公共的静态方法来提供测试数据,并使用 `@Parameters` 注解来标记该方法。该方法应该返回一个 `Collection` 对象,其中包含要测试的每个参数组合。在测试类中,需要声明一个构造函数来接收测试数据,以及使用 `@Parameter` 注解来标记测试数据字段。
以下是一个简单的示例:
```
@RunWith(Parameterized.class)
public class MyParameterizedTest {
private int input;
private int expected;
public MyParameterizedTest(int input, int expected) {
this.input = input;
this.expected = expected;
}
@Parameters
public static Collection<Object[]> data() {
return Arrays.asList(new Object[][] {
{ 1, 2 },
{ 2, 4 },
{ 3, 6 },
{ 4, 8 },
{ 5, 10 }
});
}
@Test
public void testMultiply() {
MyClass tester = new MyClass();
assertEquals("Result", expected, tester.multiply(input, 2));
}
}
```
在上面的示例中,`data()` 方法提供了要测试的每个参数组合。在 `MyParameterizedTest` 构造函数中,使用 `input` 和 `expected` 参数来接收测试数据。最后,在 `testMultiply()` 方法中,使用 `assertEquals()` 方法来比较实际结果和预期结果。
阅读全文