테스트란?
💷

테스트란?

생성일
Dec 12, 2021 02:39 AM
태그
테스트란?
  • 소프트웨어의 품질을 확인, 버그 찾기
  • 제품이 예상하는 대로 동작하는지 확인
  • 검증하고자 하는 목표에 따라 다양한 테스트가 존재함
 
언제 테스트를 해야하나?
  • 이전 QA가 수동으로 테스트하는 방식은 비용이 많이 든다. → 병목현상
    • 자동화된 테스트의 필요성
  • 개발단계에서 테스트를 작성함으로 속도 상승, 비교적 쉽게 테스트, 높은 커버리지
 
테스트를 작성의 장점
  • 자신감
    • 이슈에 대한 예측
    • 기능이 정상 동작
    • 버그를 빨게 발견
  • 코드 품질 향상
  • 코드간 의존성 낮춤
  • 좋은 문서화
 
테스트 피라미드
  • 유닛테스트 → 통합테스트 → E2E 테스트
  • 유닛테스트 (단위테스트)
    • 함수, 모듈, 클래스단위
  • 통합테스트
    • 여러개의 단위를을 묶어 상호작용 테스트
  • E2E
    • ui 테스트, 사용자 테스트
 
테스트 비용
  • 비용 코스트
    • E2E > 통합 > 유닛
  • 테스트 실행 속도
    • 유닛 > 통합 > E2E
  • 결론
    • 유닛 > 통합 > E2E 비중으로 테스트를 작성하자
 
TDD
  • 테스트 주도 개발
  • 개발 전에 테스트를 먼저 작성하는 방법론
  • 테스트 작성 → 실패 (레드) → 리팩토링 → 성공
  • 장점
    • 요구사항 분석 및 이해, 설계가 선행됨
    • 사용자 입장에서 코드를 작성
      • 구현 보다 인터페이스를 기준으로 코드를 작성하므로 퀄리티 향상
    • 시스템 전반적인 설계 향상
    • 개발 집중력 향상
 
TDD 모든 개발자가 해야하나?
  • TDD는 자유, 테스트는 짜야함
  • UI 보단 비즈니스 로직 위주
 
ci/cd에서 테스트

    Loading Comments...