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

경민님의 프로필 이미지
경민

작성한 질문수

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

회원 관리 웹 애플리케이션 요구사항

save() 테스트 시 findById() 사용 이유

해결된 질문

작성

·

283

·

수정됨

0


[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예
3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예

[질문 내용]

[선생님 테스트 로직]

@Test

void save() {

Member member = new Member("hello", 20);

Member savedMember = memberRepository.save(member);

Member findMember = memberRepository.findById(savedMember.getId());

assertThat(findMember).isEqualTo(savedMember);

}


다음의 코드와 같이 선생님께서는 save() 테스트를 할 때 findById() 로직도 사용하시는 것을 확인할 수 있었습니다.

하지만 findById() 로직은 아직 테스트를 거쳐서 검증받지 못한 로직이므로 findById()를 쓰는 것이 아닌 순수 save()만 가지고 테스트를 해야하지 않을까 하는 궁금증이 생겼습니다! 

 

[제 테스트 로직]

@Test

void save() {

Member member = new Member("hello", 20);

Member savedMember = memberRepository.save(member);

assertThat(member).isEqualTo(savedMember);

}

그래서 이런 식으로 테스트 하는 것이 어떠한지 선생님께 질문 드리고 싶습니다!

들여쓰기가 안 되어서 올라갔네요 ㅠㅠ..!! 수정해서 다시 올렸습니다 !

답변 1

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 경민님

이 로직은 save()만 테스트하기 보다는 사실 findById()도 함께 테스트하는 로직으로 이해하시면 됩니다.

데이터를 저장하고 조회하는 부분을 한번에 같이 검증할 수 있으니까요.

감사합니다.

경민님의 프로필 이미지
경민

작성한 질문수

질문하기