1. 최종 프로젝트
조별 프로젝트 간 괜찮았던 프로세스 : 1차 설계 - 구현 - 리팩토링 - 2차 설계 또는 테스트 코드 작성 + QueryDSL?
ERD 그리기 중 식별 - 비식별 관계 복습
테스트 코드 실습
- 대상 클래스의 필드 값을 @Mock 또는 @Spy로 객체 생성하기
- BDDMockito : Mockito를 좀 더 편하게 쓸 수 있도록 도와주는 라이브러리
- 테스트 코드에서 given으로 선언하는 객체 메서드의 경우 가급적 직접 만들어서 쓰자
- RestDocs는 테스트 코드를 기반으로 작성된다
- JPARepository의 메서드 중 existsBy~(~) 메서드 : boolean 타입으로 인자에 해당하는 값이 DB에 있는 경우 true를 반환 ~ findBy~(~)와의 차이점 : findBy()의 경우 찾는 값을 찾고난 후에도 모든 DB를 끝까지 찾고, existsBy()의 경우 해당하는 값을 찾는 경우 DB 검색을 중단한다.
+ 클린코드 중 단위 테스트
- 테스트 코드에게 가장 중요한 것 : 가독성
- 테스트 당 assert는 하나 : 메서드의 assert가 하나 이상이게 될 경우 테스트를 늘린다. + 테스트 당 개념은 하나
F.I.R.S.T 규칙
1) Fast : 테스트는 빨라야 한다.
2) Independent : 각 테스트는 서로 의존성을 가지면 안된다.
3) Repeatable : 테스트는 어떤 환경에서도 반복 가능해야 한다 ~ 메서드의 멱등성
4) Self - Vailidating : 테스트는 bool 값으로 결과를 내야 한다. ~ true or false
5) Timely : 실제 코드를 구현하기 전에 테스트 코드를 작성한다 (?) : TDD 관점인 것 같다.
2. JPA 심화 강의
Spring Data JPA와 친해지기(1)
'내일배움캠프 4기 스프링 > 내배캠 TIL📘' 카테고리의 다른 글
02. 10 TIL (0) | 2023.02.10 |
---|---|
02. 09 TIL (0) | 2023.02.09 |
02. 07 TIL (0) | 2023.02.07 |
02. 06 TIL (0) | 2023.02.07 |
02. 03 TIL (0) | 2023.02.03 |