JUnit 5未在嵌套的静态类中运行测试

JUnit 5未在嵌套的静态类中运行测试,junit,junit5,Junit,Junit5,我有JUnit 4测试,我正在尝试使用JUnit 5 Vintage运行 我在嵌套的静态类中有很多测试。顶级类中的测试运行良好,但嵌套类中的测试不运行 例如: public class SomeOuterClass { @Test public void outerTest() { // test runs } public static class SomeInnerTests { @Test public vo

我有JUnit 4测试,我正在尝试使用JUnit 5 Vintage运行

我在嵌套的静态类中有很多测试。顶级类中的测试运行良好,但嵌套类中的测试不运行

例如:

public class SomeOuterClass {
    @Test
    public void outerTest() {
        // test runs
    }

    public static class SomeInnerTests {
        @Test
        public void someTest() {
            // test doesn't run
        }
    }

    public static class OtherInnerTests {
        @Test
        public void otherTest() {
            // test doesn't run
        }
    }
}

我尝试将junitPlatform.filters.includeClassNamePatterns设置为
'^.*Tests?$','^.*Tests?\$.'
,但没有成功。

您可以使用

通过导入JUnit Vintage引擎使用它:

<dependency>
    <groupId>org.junit.vintage</groupId>
    <artifactId>junit-vintage-engine</artifactId>
    <version>${junit5.vintage.version}</version>
    <scope>test</scope>
</dependency>

org.junit.vintage
朱尼特老式发动机
${junit5.vintage.version}
测试

JUnit 5 Vintage在最终版本中增加了对运行嵌套静态类的支持

默认情况下,它只查找名称以“Test(s)”结尾的类。要包含没有这样命名的嵌套静态类,请在生成文件中设置以下内容

junitPlatform.filters.includeClassNamePatterns '^.*Tests?$', '^.*Tests?\\$.*$'