네번째 발자국 👣
Presentation Layer 테스트 외부세계의 요청을 가장 먼저 받는 계층 파라미터에 대한 최소한의 검증을 수행한다. @Mock, @Spy, @InjectMocks @Mock : Mock(가짜) 객체로 만든다 @InjectMocks : Mock 객체를 주입해준다 @Spy : 기능들중 일부만 Mock으로 만든다. 더 나은 테스트를 작성하기 위한 구체적 ...
- 좋아요수
- 0
Presentation Layer 테스트 외부세계의 요청을 가장 먼저 받는 계층 파라미터에 대한 최소한의 검증을 수행한다. @Mock, @Spy, @InjectMocks @Mock : Mock(가짜) 객체로 만든다 @InjectMocks : Mock 객체를 주입해준다 @Spy : 기능들중 일부만 Mock으로 만든다. 더 나은 테스트를 작성하기 위한 구체적 ...
1. @Mock, @MockBean, @Spy, @SpyBean, @InjectMocks 의 차이를 한번 정리해 봅시다. @Mock : 가짜 객체를 만들어준다. @MockBean : spring context가 필요한 통합테스트에서 사용한다. @Spy : 여러기능 중 쓰고싶은 곳만 stubbing하고 다른 기능은 실제 객체가 수행한다. @SypBean : ...
Presentation 계층 사용자의 입력을 받아 Business Layer로 전달 파라미터에 대한 최소한의 검증을 수행한다 Business Layer와 Persistence Layer를 Mocking 처리 후 테스트 한다. @WebMvcTest 사용 request 파라미터 값이 유효한지 검증한 후, 응답 상태코드나 에러메세지 출력을 확인한다. Busine...
테스트는 왜 필요할까? -테스트를 통해 얻고자 하는것 빠른 피드백 자동화 안정감 단위테스트 작은 코드단위를 독립적으로 검증하는 테스트 검증속도가 빠르고, 안정적이다 테스트 케이스 세분화하기 해피케이스 예외케이스 경계값 테스트 ( 범위(이상,이하,초과,미만)구간 날짜 등) 테스트하기 어려운 영역을 분리하기 테스트하기 어려운 영역 -> 관측할 때마다 다른 값에...
코드 다듬기 주석의 양면성 변수와 메서드의 나열순서 : 나열순서로 의도와 정보를 전달할수 있다. 패키지 나누기 IDE의 도움 받기 리팩토링 미션 회고 리팩토링을 직접해보려니 생각보다 너무 어려웠다. 🥲 배웠던 접근 방법도 중구난방으로 생각이 나고, 내 생각을 코드로 나타내는 것이 쉽지않았다. 그래도 먼저 내가 생각했던 방식을 기록하고, 다시 강의를 보면서...
추상화 이름짓기 메서드 선언부의 의미 추상화 레벨 추상화 레벨이 동등해야한다. 매직넘버, 매직 스트링 상수로 추출하기 논리, 사고의 흐름 뇌 메모리 적게쓰기 Early return, 사고의 depth 줄이기 공백 라인이 가지는 의미, 부정어 - 긍정문으로 바꾸기 해피 케이스와 예외처리 - 예외에 더 집중하자. Null 처리 주의하기 객체 지향 패러다임 추상...
미션 Day4 리팩토링하기 public boolean validateOrder(Order order) { if (order.getItems().size() == 0) { log.info("주문 항목이 없습니다."); return false; } else { if (order.getTotalPrice() > 0) { if (!order.hasCustomerI...