在JUnit 5中,可以使用JUnitCore来运行参数化测试。JUnitCore是JUnit 5的核心引擎,它提供了一种简单的方式来运行测试。
要在JUnit 5中使用JUnitCore运行参数化测试,可以按照以下步骤进行操作:
下面是一个示例代码:
import org.junit.jupiter.api.TestTemplate;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;
import org.junit.jupiter.params.provider.ValueSource;
import org.junit.platform.runner.JUnitCore;
import org.junit.runner.RunWith;
import java.util.stream.Stream;
import static org.junit.jupiter.api.Assertions.assertEquals;
public class ParameterizedTestExample {
@ParameterizedTest
@MethodSource("provideStrings")
void testStringLength(String input, int expectedLength) {
assertEquals(expectedLength, input.length());
}
static Stream<String> provideStrings() {
return Stream.of("hello", "world", "foo");
}
public static void main(String[] args) {
JUnitCore.runClasses(ParameterizedTestExample.class);
}
}
在上面的示例中,我们创建了一个参数化测试类ParameterizedTestExample。该类中的testStringLength方法接受两个参数:input和expectedLength。我们使用@MethodSource注解来指定provideStrings方法作为提供测试参数的方法。
provideStrings方法返回一个Stream对象,其中包含了要测试的字符串。在testStringLength方法中,我们使用assertEquals来验证输入字符串的长度是否与期望的长度相等。
最后,在主类中,我们使用JUnitCore.runClasses()方法来运行参数化测试类。
这是一个简单的示例,演示了如何在JUnit 5中使用JUnitCore运行参数化测试。根据具体的需求,你可以根据不同的测试场景和参数来扩展和修改代码。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云