1. 코딩 테스트 입문
0단계 60개 해결!
약수 구하기
새로 알게된 기능
IntStream : rangeColsed
IntStream.rangeClosed(1, n).filter(i -> n % i == 0).toArray();
2. 테스트 코드 강의 및 실습
인프런 - 김영한 스프링 입문 강의를 통한 복습
- 레포지토리 테스트 케이스 작성 및 구동 실습
// 인텔리제이 : 반환 타입 확인 및 변수 자동 생성 : Ctrl + Alt + V
// static import : Alt + Enter
// Ctrl + R : 이전에 실행한 것을 다시 실행
*모든 테스트 메서드는 순서와 상관없이 잘 작동해야한다(서로 간 순서에 의존성이 없어야 한다)
-> 테스트가 끝나고 나면 Clear를 해야한다 : @AfterEach 클리어 매소드 작성할 것 ~ 테스트 코드, 본 코드 모두
+static import
테스트의 핵심에 예외처리가 잘 실행되는 지 확인하는 것도 포함된다
*필드로 사용하기 위해 동일한 클래스 타입의 객체를 각 테스트 등에서 매번 생성하는 것은 서로 다른 객체를 사용하는 것!
~ 값이 달라질 수도 있다
-> 그 클래스의 객체를 선언하고 초기화하여 쓰는 것이 DI, IoC.
PostRequestDto의 접근 제어자가 public 인데 접근할 수 없다고 하는 오류 -> 기본 생성자를 생성해주자
@Builder 패턴이 걸려있는 경우 @AllArgsConstructor 와 @NoArgsConstructor를 모두 붙여주자
참고
https://stackoverflow.com/questions/17353327/populating-spring-value-during-unit-test
https://kkambi.tistory.com/210
3. 스프링 구동과정 복습
인프런 - 김영한 스프링 입문 강의를 통한 복습
1) 컴포넌트 스캔과 자동 의존관계 설정
@Component를 가지고 있는 클래스를 Bean 자동 등록
2) 자바 코드로 직접 스프링 빈 등록하기
@Service, @Repository가 아닌 @Configuration이 붙어있는 SpringConfig 클래스에서 각 클래스의 객체를 생성하고 @Bean 어노테이션을 붙여준다
1번과 2번의 장단점
@Autowired는 1번 혹은 2번, 어떤 것이든 Bean으로 등록된 후(스프링 컨테이너에 등록)에 그 기능이 동작한다
참고
Baeldung 블로그로 스프링 배우기
'내일배움캠프 4기 스프링 > 내배캠 TIL📘' 카테고리의 다른 글
01. 31 TIL (0) | 2023.01.31 |
---|---|
01. 30 TIL (0) | 2023.01.30 |
01. 26 TIL (0) | 2023.01.26 |
01. 25 TIL (1) | 2023.01.25 |
01. 23 심화 프로젝트/ 시퀀스 다이어그램 그리기 (0) | 2023.01.23 |