TIL - 31 : Software Testing

TIL - 31 : Software Testing

Software Testing


  • 코드 -> 코드의 결과에 대한 기대 -> 테스트 => 성공, => 실패 -> Modify & Fix

  • 제대로 된 소프트웨어를 개발 했는가?, 소프트웨어를 제대로 개발 했는가?

  • 테스트를 하는 이유
    • 결함 확인
    • 사전 방지
    • 시간 절약
    • 구조 개선
    • 품질 개선
    • 확장성
  • 메뉴얼 테스팅
    • 직접 하나하나 다 하는 테스트
      • 불안정성, 인력소모, 비용 ↑
      • 테스트 속도 ↓
  • 자동화 테스팅
    • 안정성 ↑
    • 인력소모 ↓
    • 비용 ↓
    • 테스트속도 ↑
  • 시스템 테스트 전략(복잡도는 10%, 20%, 70%)
    • E2E Tests - 전체적인 Flow
      • tool: cyPress
    • Integration Tests - 모듈 간의 호환성 검증
    • Unit Tests - 독립적으로 진행되는 가장 작은 단위의 테스트
      • 테스트 할 수 있는 가장 작은 단위를 테스트
      • 빠른 문제 파악가능
      • 시간과 비용 절감
      • 리팩토링 시 안정성 확보
      • 코드에 대한 문서로 활용
  • TDD(테스트 주도개발) 더 알아보고 학습 하기!

© 2022.02 by sunnyfterrain