2

给定以下 Junit5 测试类,我如何在每个测试方法中的参数化运行按顺序运行时并行运行upperCaseTestlowerCaseTest换句话说,“A”、“B”和“C”应该按顺序运行,“x”、“y”、“z”应该按顺序运行,但“A”和“x”应该能够并行运行.

@Execution(ExecutionMode.CONCURRENT)
class ParallelParameterizedTest {

    @ParameterizedTest
    @ValueSource(strings = {"A", "B", "C"})
    void upperCaseTest(String s) {
        assertEquals(s.toUpperCase(), s);
    }

    @ParameterizedTest()
    @ValueSource(strings = {"x", "y", "z"})
    void lowerCaseTest(String s) {
        assertEquals(s.toLowerCase(), s);
    }
}

我的 junit-platform.properties 文件如下:

junit.jupiter.execution.parallel.enabled = true
junit.jupiter.execution.parallel.config.strategy = fixed
junit.jupiter.execution.parallel.config.fixed.parallelism = 2

实际行为是所有测试并行运行。

Junit5 的 Gitter 页面上有一个正在进行的线程(https://gitter.im/junit-team/junit5?at=6005fe8fac653a0802c8c258

4

0 回答 0