테스트 주도 개발 (Test Driven Development)
작성한 코드를 빠르게 검증할 수 있다.
매번 포스트맨 키거나 뷰 만들고 테스트하기 번거롭기 때문
단위 테스트(Unit Test) : 각 계층별 테스트 하는 것
통합 테스트(Integration Test) : 전체를 한 번에 테스트 하는 것
테스트 코드는 하나의 문서이다.
given : 준비
when : 실행
then : 검증
에러가 날땐?
Caused by ... -> 구글링!
Mock 객체와 UserService 객체는 주소값이 다르다.
그러므로 User에 @EqualsAndHashCode
를 넣어준다.
또는 Mock 객체를 쓴다면 any()
를 써준다.
많은 도움이 되었습니다, 감사합니다.