[Loop:PAK] 1주차 WIL

2025. 10. 30. 10:45·외부활동/루퍼스 2기

🧠 이번 주에 새로 배운 것

- 테스트 코드 작성시 내가 테스트하려는게 무엇이고, 내가 검증하려는것이 '진짜' 검증이 되는가 생각하는 습관을 가지게 되었어요.

- 테스트 코드 검증시 꼭 필요한 검증만 해야한다는 것을 배웠어요. 불필요한 것들까지 검증하면 테스트 코드 리팩터링 내성이 없다는 것을 배웠습니다.

- 입력값 검증과 데이터 검증은 다르게 가야 한다는 것을 배웠어요. 포인트 충전시 엣지 케이스로 음수 충전을 놓쳤습니다.

- 여러 클래스가 있을때 TDD를 작성하는 과정을 알게되었어요. 클래스 한개씩 완성하고 연관 클래스들은 인터페이스만 설계 하던가 인터페이스 + 구현체로 바로 갈지를 상황에 맞게 고민 후 선택합니다.

- XxxRepository의 인터페이스 선언을 최소화해야 한다는 것을 배웠어요. 예를 들어, findBy 하나만 있어도 충분하고 getBy, exist는 불필요 합니다.

 

💭 이런 고민이 있었어요

- PR 리뷰어의 가독성을 위한 적절한 commit 단위를 고민했어요. 

- Service의 if-else문 리팩터링을 어떻게 할지 고민했어요. early-return 방식을 멘토님께 리뷰 받았습니다.

- spy 검증이 어떤 경우에 필요한지, 어떻게 구현하지 고민했어요. @MockitoSpyBean을 사용해 구현하였습니다.

 

💡 앞으로 실무에 써먹을 수 있을 것 같은 포인트

- XxxRepository 인터페이스 선언을 최소화 하기

- 테스트 코드 작성시 엣지 케이스를 넓게 생각하기

 

🤔 아쉬웠던 점 & 다음 주에 해보고 싶은 것

- commit 메시지 body 부분을 채우지 못해 아쉬웠어요. 2주차 과제부터 채워야 겠어요.

 

저작자표시 (새창열림)

'외부활동 > 루퍼스 2기' 카테고리의 다른 글

[Loop:PAK] 3주차 WIL  (0) 2025.11.14
[루퍼스/루프백 2기] 도메인을 보호하고 객체간 협력을 지키는 구현 방법  (0) 2025.11.12
[Loop:PAK] 2주차 WIL  (0) 2025.11.06
[루퍼스/루프백 2기] 문서를 만들고 개발을 진행하시나요?  (2) 2025.11.01
[루퍼스/루프백 2기] 테스트 코드와 TDD에 대한 나의 생각  (0) 2025.10.28
'외부활동/루퍼스 2기' 카테고리의 다른 글
  • [루퍼스/루프백 2기] 도메인을 보호하고 객체간 협력을 지키는 구현 방법
  • [Loop:PAK] 2주차 WIL
  • [루퍼스/루프백 2기] 문서를 만들고 개발을 진행하시나요?
  • [루퍼스/루프백 2기] 테스트 코드와 TDD에 대한 나의 생각
소프
소프
  • 소프
    기회는 찬스
    소프
  • 전체
    오늘
    어제
    • 분류 전체보기 (138)
      • Language (20)
        • Java (19)
        • Design Pattern (1)
      • Tech (27)
        • Spring (19)
        • JPA (3)
        • QueryDSL (1)
        • Gradle (4)
      • 개발 생각 (1)
      • IT Book (0)
        • 자바_스프링 개발자를 위한 실용주의 프로그래밍 (0)
      • Database (4)
        • Mysql (4)
        • Redis (0)
      • 네트워크 (1)
      • 운영체제 (2)
      • IDE (12)
        • Intellij (9)
        • vscode (2)
        • datagrip (1)
      • 인프라 (11)
        • Docker (2)
        • Jenkins (7)
        • Github Actions (1)
        • GCP (1)
      • 형상관리 (2)
        • gitlab (2)
        • git (0)
      • 외부활동 (44)
        • CS 면접 끝장내기 - 데이터베이스 1기 (5)
        • CS 면접 끝장내기 - 컴퓨터 네트워크 2기 (5)
        • CS 면접 끝장내기 - 자바 2기 (0)
        • TDD, 클린 코드 with Java 17기 (7)
        • ATDD, 클린 코드 with Spring 8기 (6)
        • 루퍼스 2기 (21)
      • 프로젝트 (0)
      • 회고 (6)
      • 기타 (1)
        • 제미니의 개발 실무 (0)
  • 블로그 메뉴

    • 홈
    • Github
    • LinkedIn
    • 방명록
  • 인기 글

  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.6
소프
[Loop:PAK] 1주차 WIL
상단으로

티스토리툴바