인프런 커뮤니티 질문&답변

좋은 백조님의 프로필 이미지

작성한 질문수

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

JPA와 DB 설정, 동작확인

질문.

해결된 질문

작성

·

276

2

선생님 진짜 입 꾹다물고 야생형으로 가보려고했는데 이게 궁금해서 못참겠습니다..

@RunWith(SpringRunner.class) 
@SpringBootTest

앞쪽 스프링할때 테스트케이스 작성시에 클래스위에 아무것도 없었는데 

저 두문장이 생겼습니다... springboottest가 없으면 nullpoint예외가 발생했었고

runwith가 없어도 잘 작동되었습니다.

답변 1

4

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 규영님^^

잘 질문하셨습니다.

먼저 @SpringBootTest는 실제 스프링 프레임워크를 띄워서 테스트를 하는 것입니다. 그래서 테스트 케이스에서도 @Autowired로 빈을 주입받을 수 있습니다.

@RunWith(SpringRunner.class)

이것은 테스트 프레임워크인 Junit4와 Junit5에서 오는 차이입니다.

제가 활용1편을 찍을 당시에는 스프링 부트가 JUnit4를 기본으로 지원했습니다. 이 경우는 좀 귀찮게 저걸 다 적어주어야 합니다.

JUnit5로 오면서 스프링 부트가 편리하게 통합해서 이 부분을 생략해도 됩니다.

도움이 되셨길 바래요^^