使用 Junit4 在内部类和外部类中的测试用例



我有 2-3 个内部类,它们有一些测试用例,并且运行良好(正在测试)。我在外部类中也有一些测试用例,但这些测试用例没有运行。我有以下结构:

@org.junit.runner.RunWith(Enclosed.class)
public class Outer { 
    @Test
    public void test1() {
        assert("Outer" != null);
    }
    public static class Inner1 {
        @Test
        public void test2() {
            assert("Inner1" != null);
        }
    }
    public static class Inner2 {
        @Test
        public void test3() {
            assert("Inner2" != null);
        }
    }
}

当我运行此代码时,只测试 test2test3test1 未运行。我想运行所有测试用例。那么Junit4是否可能做到这一点,或者还有其他方法可以实现这一点吗?

提前谢谢。

解决方法是将 Outer 中的所有测试放入新的内部类中:

@org.junit.runner.RunWith(Enclosed.class)
public class Outer {
    public static class Inner {
        @Test
        public void test1() {
            assert ("Outer" != null);
        }
    }
    public static class Inner1 {
        @Test
        public void test2() {
            assert ("Inner1" != null);
        }
    }
    public static class Inner2 {
        @Test
        public void test3() {
            assert ("Inner2" != null);
        }
    }
}

最新更新