본문 바로가기
개발/TEST관련

테스트에서의 서비스 추상화

by ahoy~ 2020. 10. 5.

JavaMailServiceImpl을 사용하는 UserService가 있다고 생각해보자.

테스트를 진행하려는데 JavaMailServiceImpl을 사용하되 실제 메일은 보내지지 않았으면 좋겠다.

이런 경우에는 JavaMailServiceImpl을 위한 Interface인 MailSender를 둔 후, MailSender만 사용한다.

UserService에서는 DI를 통해 운영 시에는 JavaMailServiceImpl을, 테스트 시에는 DummyMailService를 사용하게 만든다면 의도한 대로이다.

 

추상화와 DI를 잘 활용하는 것이 Spring이라는 Framework를 잘 사용하는 것인 것 같다.

'개발 > TEST관련' 카테고리의 다른 글

테스트 주도 개발 3~9장  (0) 2020.06.15
테스트 주도 개발 - 1~2장  (0) 2020.05.24
테스트 주도 개발  (2) 2020.05.24

댓글