작성
·
535
1
안녕하세요 강의를 듣다가 기존에 제가 작성한 테스트 소스를 보면서 리펙토링 중인데..
기존에 별 생각 없이 사용하던 Mock 객체에 대해 궁금한 점이 생겨서...
질문 남깁니다.
제목에서와 같이
@Mock 과 @MockBean 에 대한 질문인데..
저는 주로 @MockBean 을 이용하여 테스트를 진행했습니다.
BDDMockito.given / BDDMockito.then 등과 함께
시나리오 구성하면서 Spring에 Mock을 Bean으로 주입하려고
이름보고 아무 생각 없이 @MockBean 을 사용했는데..
강의를 들으면서 정확히 어떤 차이가 있는 지... 잘 와닿지가 않는 느낌입니다.
(구글링해도.. 그냥 Bean 주입 여부에 차이인가... 싶습니다)
답변 1
1
말씀하신대로 mock객체를 만들고 빈으로 주입하려면 @MockBean을 쓰는게 맞아요. @Mock은 그냥 목 객체만 만들고 스프링에 빈으로는 등록되진 않습니다. 좀 더 자세한건 해당 애노테이션의 JavaDoc을 참고해 보시면 좋겠습니다.