有没有办法在JUnit Jupiter(Junit5)中进行参数化测试?

@RunWith(Parameterized.class)

背景:

我经历了How to write junit tests for interfaces?并想使用JUnit5将测试用例实现为answered here。但是在Jupiter程序包中找不到相同的类。

尝试:

进一步寻找替代品,我发现Extensions将取代Migrating tips中所述的@RunWith



我尝试定义示例 here - MockitoExtension中提供的CustomExtension,但未能成功使用类的实例化参数化

期待有关如何使用JUnit5实现接口(interface)的类的参数化实例测试接口(interface)的建议。

最佳答案

JUnit 5 M4刚刚发布,现在支持参数化测试。

这是“Hello World”示例:

@ParameterizedTest
@ValueSource(strings = { "Hello", "World" })
void testWithStringParameter(String argument) {
    assertNotNull(argument);
}

请参阅User Guide以获取完整的文档和其他示例。

09-28 12:24