service

상황 Service UnitTest 중 발생 원인 @Before 에서 실행되는 아래 Stubbing이 쓰이지 않은 메소드가 있었다. given(userRepository.findByEmail(userEmail)).willReturn(Optional.of(user)); 해결 @Before 어노테이션을 제거하고, 필요한 메소드에서 호출하는 방식으로 변경!
Unit Test ? 단위 테스트는 Service Layer의 비즈니스 로직만을 검증하는 것이므로, Repository와 Controller의 영향을 받지 않는 환경에서 테스트를 진행하여야 한다. 테스트의 F.I.R.S.T 원칙 F - Fast: 테스트를 시도하는 것에 있어서 주춤되지 않을 만큼 빨라야 한다. I - Independent: 객체의 상태, 메소드, 이전 테스트 상태, 다른 메소드의 결과에 의존해서는 안된다. R - Repeatable: 어떤 환경에서도 같은 결과가 나올 수 있도록 반복 가능해야 한다. S - Self-Validating: 모든 테스트는 pass 혹은 fail의 결과만 가지고 있어야 한다. T - Timely: 실제 코드가 만들어지기 전에 테스트 되어야 한다. 실제 코드를 구..
[ Controller 생성 ] 요청에 따른 적절한 응답을 보냄 @RequiredArgsConstructor 필드 주입(@Autowired) 대신 사용하는 생성자 주입! 순환 참조 방지 테스트 코드 작성 용이 객체 변이 방지 ( final 키워드 사용 ) More: https://zorba91.tistory.com/238 @RequestBody 클라이언트가 전송하는 Json 형태의 HTTP Body 내용을 Java Object로 변환 메세지를 변환하는 과정에서 객체의 기본 생성자를 통해 객체를 생성하고, 내부적으로 Reflection을 사용해 값을 할당 → 기본 생성자는 필요하고 Setter는 필요하지 않은 이유! @PathVariable URI 경로의 일부를 파라미터로 사용할 때 사용 @RequestP..
점이
'service' 태그의 글 목록