我有 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);
}
}
}
当我运行此代码时,只测试 test2 和 test3。test1 未运行。我想运行所有测试用例。那么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);
}
}
}