좋은 테스트 원칙
🎿

좋은 테스트 원칙

생성일
Dec 14, 2021 02:04 PM
태그
테스트의 비밀
  • 한번 작성된 테스트 코드는 영원히 유지보수 해야 한다.
  • 내부 구현 사항을 테스트 X
    • 사용자 입장에서 테스트
  • 재사용성 높이기
    • 테스트 코드도 유지보수 해야 하니깐 클린코드 유지해라
  • 배포용 코드와 분리
  • 테스트코드를 통한 문서화
 
좋은 테스트의 구조
  • before, after 함수 사용
  • 준비 (given) → 실행 (when) → 검증 (then)
 
좋은 테스트 원칙
  • FIRST
    • Fast
      • 느린것에 대한 의존성 낮추기
      • 외부 파일, 데이터베이스, 네트워크 등
    • Isolated
    • Repeatable
      • 실행할 때마다 동일한 결과 유지
    • Self-Validating
      • 스스로 결과 검증하기 → jest
    • Timely
      • 시기적절하게 테스트 작성
 
무엇을 테스트 할지 모를때 원칙
  • Right-BICEP
    • Right
      • 모든 요구 사항이 정상 동작 하는지 확인
      • 모든 결과가 정확한지 확인
    • Boundary conditions
      • 모든 코너 케이스에 대해 테스트를 하기
    • Inverse relationship
      • 역관계를 적용해서 결과값을 확인
    • Cross-check
      • 다른 수단을 이용해서 결과값이 맞는지 확인
    • Error-conditions
      • 불행한 경로에 대해 우아하게 처리하는가?
    • Performance-characteristics
 
좋은 테스트의 커버리지
  • CORRECT
    • Conformance
      • 특정 포맷을 준수
      • 전화번호, 이메일, 아이디, 파일 확장자..
    • Ordering
      • 순서 조건 확인하기
    • Range
      • 숫자의 범위
    • Reference
      • 외부 의존성 유무, 특정한 조건의 유무
    • Existence
      • 값이 존재 하지 않을때 어떻게 동작하는지
    • Cardinality
      • 0-1-n 법칙
      • 하나도 없을 때, 하나만 있을 때, 여러개가 있을 때
    • Time
      • 상대, 절대, 동시의 일들
 
 
 
 
 
 

Loading Comments...