미해결
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Service Layer Test와 Service Layer 관련 질문입니다
강의에 직접적인 연관이 있지는 않지만 궁금한 점이 생겨 질문드리게 되었습니다
1. Service Layer Test 관련 질문입니다
강의에서는 Service Layer를 @SpringBootTest 어노테이션을 통해서 단위 테스트 보다는 통합테스트에 가깝게 테스트가 진행되었습니다
통합테스트로 진행을 하면 DB에 직접 쿼리까지 날림으로써 확실히 이 코드가 제대로 작동한다는 것을 알 수 있습니다
하지만 단위 테스트로 진행할 경우 테스트하는 메서드 내부에서 사용된 메서드는 Mockito를 이용하여 동작을 기대값으로 설정함으로써 해당 메서드의 진짜 비즈니스 로직만의 맞고 틀림을 판별한다는 생각이 듭니다
그렇다면 Service Layer에 그렇다할 비즈니스 로직이 존재하지 않는 경우에는 통합테스트만 진행하고
비즈니스 로직이 존재한다면 단위테스트도 하고 통합테스트도 해야 하는지 궁금합니다
아니면 그렇다할 비즈니스 로직이 존재하지 않더라도 단위테스트를 작성해야 하는지 궁금합니다
2. Service Layer의 존재 유무 관련 질문입니다
만약 memberRepository 와 memberService라는 클래스가 존재하는데
memberService에서는
MemberService
public Member findById(Long id) {
return memberRepository.findById(id);
}
이런식으로 memberRepository의 메서드를 그대로 실행만 하고 반환만 하는 상황이라면 바로 MemberRepository에 접근해서 가져와도 될것 같은데 MemberService Layer를 따로 만들어 줘야하는 지 궁금합니다