Tôi đang thử nghiệm với nhân viên JUnit Enclosed
để thử và cải thiện tổ chức một số thử nghiệm của tôi. Tại thời điểm này tôi đang cố gắng tìm ra cách chia sẻ một số thiết lập giữa các lớp bên trong.JUnit Á hậu kèm theo và thiết lập chia sẻ
Nỗ lực đầu tiên:
@RunWith(Enclosed.class)
public class EnclosedTest {
@Before
public void printSomething() {
System.out.println("Helllooo Meggan");
}
public static class FirstTest {
@Test
public void assertThatSomethingIsTrue() {
assertThat(true, is(true));
}
}
public static class SecondTest {
@Test
public void assertThatSomethingIsFalse() {
assertThat(false, is(false));
}
}
}
Thật không may, không ai nói chào Meggan. Nếu tôi cập nhật một lớp bên trong để mở rộng một bên ngoài, sau đó tôi nhận được như sau:
java.lang.Exception: class 'org.scratch.EnclosedTest$FirstTest' (possibly indirectly) contains itself as a SuiteClass
at org.junit.runners.model.InitializationError.<init>(InitializationError.java:32)
Có một đặc biệt Enclosed
thành ngữ để sử dụng khi cố gắng chia sẻ thiết lập giữa các lớp kiểm tra bên trong? Tôi đã hy vọng nó sẽ đơn giản như là C# example I found.