워밍업 클럽 4기 BE - 3주차 발자국

3주차 미션 회고

토이 프로젝트에서 직접 테스트 코드를 작성하면서, 예상보다 다양한 부분에서 고민할 지점들이 생겼다. 테스트 설명을 일관되게 유지하는 방법부터, 하나의 테스트 단위를 어떤 크기로 설정할지까지 여러 가지를 고민하게 됐다. 직접 테스트를 작성하지 않았다면 떠올리지 못했을 다양한 관점들을 생각해볼 수 있는 좋은 기회였다.

 

3주차 강의 회고

스프링을 활용해 간단한 서비스를 직접 만들어보고, 각 기능에 맞는 테스트 코드를 작성해 나가는 과정을 통해 많은 것을 배울 수 있었다. 테스트 코드 작성뿐만 아니라, 잠시 잊고 지냈던 스프링과 JPA 관련 트러블슈팅부터 아키텍처에 대한 관점, 패키지 구조에 대한 인사이트까지 얻을 수 있었던 유의미한 시간이었다.

 

3주차 학습 내용 요약

Persistence Layer


  • Data Access의 역할

     

  • 비지니스 가공 로직이 포함되어서는 안된다.

     

  • Data에 대한 CRUD에만 집중한 레이어

Business Layer


  • 비지니스 로직을 구현하는 역할

  • Persistence Layer와의 상호작용을 통해 비지니스 로직을 전개시킨다.

     

  • 트랜잭션을 보장해야 한다.

     

Presentation Layer


  • 외부 세계의 요청을 가장 먼저 받는 계층

     

  • 파라미터에 대한 최소한의 검증을 수행한다.

주요 인사이트 1


  • 섹션명 : Business Layer 테스트 (2)

  • 타임블록 : 11:10 ~ 12:00

  • 내용 : @DataJpaTest와 @SpringBootTest

주요 인사이트 2


  • 섹션명 : Business Layer 테스트 (3)

  • 타임블록 : 31:00 ~ 32:00

  • 내용 : 여러 계층에서 생기는 중복 벨리데이션에 대한 고찰

주요 인사이트 3


  • 섹션명 : Business Layer 테스트 (3)

  • 타임블록 : 46:00 ~ 47:00

  • 내용 : 테스트 코드의 @Transaction 사용 시 주의사항

댓글을 작성해보세요.

채널톡 아이콘