단위 테스트에서 Mock을 얼마나 사용해야 할까? 지난번 포스팅에서 테스트 시 외부 API 또는 DB와 통신해야할 때 테스트 환경이 구축되어있지 않아도 Mock 사용해 테스트할 수 있다고 작성하였는데, 그렇다면 얼마나 Mock을 사용해야하는지 판단해보자. 예제 이전에 작성한 예제 코드를 보면 StudyService의 createStudy 메소드에서 사용되는 모든 객체(studyRepository, memberRepository, studyMapper)들을 mocking하고 있다. 단위 테스트에서 단위를 어떻게 생각하는지에 따라 다른 테스트 코드가 작성되는데 예제 코드는 createStudy 메소드에서 사용되는 모든 객체들을 엄격하게 mocking하고 있다. 그렇다면 상황을 바꿔서 생각해보자. StudyMapper studySevice studyMapper가 인터페이스로 작성되어 있었던 이전 포스팅과 달리 위의 코드로 실제로 구현이 되어있는 상태라면 @Spy 어노