java - 何时在 Junit 5 中使用动态测试

标签 java junit

一直在阅读 Junit 5.0 的文档。 注意到引入了一个新方法 @TestFactory。当您实际创建其中一个时,@TestFactory 用法的好例子是什么?

彼得

最佳答案

当您需要对许多不同的输入值或配置运行同一组测试时,动态测试生成非常有用。

@TestFactory
Stream<DynamicTest> dynamicTestsFromIntStream() {
    // Generates tests for the first 10 even integers.
    return IntStream.iterate(0, n -> n + 2).limit(10).mapToObj(
            n -> dynamicTest("test" + n, () -> assertTrue(n % 2 == 0)));
}

或者一个更复杂的例子。您可以定义自己的 DSL 来描述测试套件并将它们存储在非源文件中。然后你可以读取和处理这些文件,并根据输入生成动态测试。

关于java - 何时在 Junit 5 中使用动态测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37653886/

相关文章:

java - Spring Tomcat 多个 HTTPS 端口

java - 如何排除 Java 对象属性作为 JSON 字符串的一部分?

java - 使用来自 JavaScript 的参数运行 .jar 文件

java - 在Java中打印文本文件的确切内容

java - 如何使用 Mockito 和 JUnit 检查方法中的 if 语句?

java - 处理连接错误的最佳实践

java - 我如何测试接口(interface)?

java - 如何对 Clob 转换为 String 进行单元测试?

java - 如何编写 Java e2e(端到端)测试

java - mockito "verify"检查当前状态,但不重置模拟调用