인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

dev_climber님의 프로필 이미지
dev_climber

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

회원 서비스 테스트

테스트 작성 시 Autowired사용 관련하여 질문드립니다

작성

·

132

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/

[질문 내용]
안녕하세요 강사님! 강의를 다 듣고 TDD를 흉내내면서 프로젝트를 진행중인데 Repository를 테스트하는 중
@Autowired를 통해 Repository를 가져오면 오류가 나서 구글링을 했더니 JUnit과 스프링은 연동이 되지 않기 때문이라는 글을 보았습니다.
그래서 테스트 시에는 스프링에 등록된 빈을 가져오지 못하기 때문에 반드시 new를 이용해 객체를 생성해야 하며, 이러한 이유로 테스트를 위해선 구현체가 필요하다
라고 이해를 했는데 제가 이해한게 맞는걸까요??

답변 1

1

안녕하세요. 정호원님, 공식 서포터즈 OMG입니다.

@Autowired가 가능하게 하려면 @SpringBootTest 어노테이션을 붙이시면 됩니다.

통합테스트를 하지 않으실 경우 말씀하신대로 생성하는 방법 혹은 Mockito를 이용한 가짜객체를 이용한 방법이 있으니 말씀드린 키워드로 검색하여 학습하시면 도움 되리라 생각합니다.

통합테스트 관련하여서는 본 강좌에서도 설명해주십니다.

 

링크)

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EC%9E%85%EB%AC%B8-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8/lecture/49595?tab=curriculum

 

감사합니다.

dev_climber님의 프로필 이미지
dev_climber
질문자

답변 감사합니다! 통합테스트 강의도 보았는데 코딩하면서 연결해서 생각하지를 못했네요ㅠㅠ

@SpringBootTest 활용해서 단위테스트에도 적용해보았더니 Mybatis 구현체를 별도로 생성하지 않고도 Mapper파일과 연동하여 테스트해볼 수 있었습니다!! 감사합니다~!

dev_climber님의 프로필 이미지
dev_climber

작성한 질문수

질문하기