본문 바로가기
Blog/Education

1주차 정리

by 코젼 2024. 9. 27.
728x90
반응형

목차

    학습 목표

    TDD, Testable Code, Test Code

    https://github.com/kdelay/Point-API-TDD

     

    GitHub - kdelay/Point-API-TDD: 💠 포인트 충전, 조회 등 관련 API - TDD 작성하기

    💠 포인트 충전, 조회 등 관련 API - TDD 작성하기. Contribute to kdelay/Point-API-TDD development by creating an account on GitHub.

    github.com


    TDD(Test Driven Development)

    핵심 테스트 코드를 먼저 작성하고, 이를 바탕으로 기능 개발을 진행한다.

    불필요한 개발 생산성 저하를 방지하기 위해 테스트 스코프를 크게 잡지 않는다.

    테스트 커버리지 100% 보다, 유의미한 테스트 작성에 집중한다.

     

    TDD가 중요한 이유?

    빠른 변화에도 유연하게 새로운 기능을 적용하고 변경할 수 있는 기반을 제공해준다.

    Test Pyramid

    - Unit Testing(단위 테스트): 단일 기능, 함수, 객체 등을 테스트한다.

      - 새로운 기능 추가로 인해 기존 기능이 문제되지 않는지 점검한다.

    - Integration Testing(통합 테스트): 서로 다른 모듈, 시스템의 상호 작용을 테스트한다.

      - 서로 잘 맞물려서 원하는 기능을 제공하는지 점검한다.

    - End-to-End Testing: 전체 애플리케이션의 흐름을 테스트한다.

      - 사용자 시나리오 기반으로 애플리케이션 기능을 제공하는지 점검한다.

    Test Double

    실제 컴포넌트를 대체할 수 있도록 하는 대역이다.

    - Mock: 입력과 상관없이 어떤 행동을 할지 초점을 맞춘 객체

      - MockMvc 객체를 사용하고 mockito 라이브러리를 사용함

    - Stub: 입력에 대해 어떤 행동을 할지 초점을 맞춘 객체

      - 대역 객체를 사용함

     

     

     

    728x90
    반응형

    'Blog > Education' 카테고리의 다른 글

    2주차 정리  (0) 2024.09.28
    대기열 Redis 이관 및 Cache Service 도입  (0) 2024.08.01
    3주차 발제 정리  (0) 2024.07.02
    DB 대기열 접근 방식 (from. 학습매니저님)  (0) 2024.06.30
    2주차 QNA & 멘토링  (0) 2024.06.28

    댓글