자바
Junit5에서의 RunWith
prayme
2020. 1. 11. 16:50
시작하기 앞서
처음 배우는 스프링 부트 2 책을 읽으면서 책의 개발환경과 실습 개발환경과 차이가 있어서 실습이 잘 안됐다. 책에서는 Junit4를 사용하여 RunWith라는 어노테이션을 사용했지만 나의 실습 환경에서는 Junit5를 사용하고 있어서 RunWith를 사용할 수 없었다. Junit5에서는 Junit Platform
, Junit Jupiter
, Junit Vintage
3개의 모듈로 나눠져 있다. 어쨌든 RunWith를 Junit5에서 사용하려면 아래와 같이 해야한다.
책의 코드
import org.junit.Before;
import org.junit.runner.Runwith;
@RunWith(SpringRunner.class)
@DataJpaTest
public class JpaMapping Test {
// TODO
@Before
public void init() {
// TODO
}
}
위에서 강조된 부분인 RunWith
, Before
, org.junit.Before
, org.junit.runner
부분이 Junit5에서는 없다. 따라서 Junit을 활용한 테스트를 할 수 없었는데 검색을 통해 이렇게 바꿨더니 정상적인 테스트를 진행할 수 있었다.
Junit5 실습 코드
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.test.context.junit.jupiter.SpringExtension;
@ExtendWith(SpringExtension.class)
@DataJpaTest
public class JpaMapping Test {
// TODO
@BeforeEach
public void init() {
// TODO
}
}