개발/Spring
[Junit5] org.junit.platform.commons.JUnitException: @BeforeAll method must be static unless the test class is annotated with @TestInstance(Lifecycle.PER_CLASS).
상용최
2020. 11. 9. 00:08
반응형
요즘 TDD에 관심이 있어서 Junit5를 사용해보려고 한다.
테스트코드전에 실행되어야 하는 로직이 있어서 @BeforeAll을 사용하고자 했다.
public class TddTest {
@BeforeAll
public void memberInit(){
System.out.println("Junit BeforeAll");
}
@Test
public void memberDomainTest() throws Exception{
System.out.println("TestCode 1");
}
}
하지만 아래와 같은 오류가 발생했다.
org.junit.platform.commons.JUnitException:@BeforeAll method must be static unless the test class is annotated with @TestInstance(Lifecycle.PER_CLASS)
원인은 간단했다.
@BeforeAll 이 붙은 method는 static이어야한다.
코드를 아래와 같이 바꾸면 정상적으로 동작한다.
public class TddTest {
@BeforeAll
public static void memberInit(){
System.out.println("Junit BeforeAll");
}
@Test
public void memberDomainTest() throws Exception{
System.out.println("TestCode 1");
}
}
반응형