나의 잡다한 노트 및 메모

Sanity test와 Smoke test 본문

QA

Sanity test와 Smoke test

peanutwalnut 2025. 4. 5. 21:08

1. Smoke Test (스모크 테스트)

개념 및 목적

  • 초기 안정성 검증:
    새로 빌드된 애플리케이션이 "큰 결함" 없이 실행되는지를 확인합니다.
    기본 기능들이 정상적으로 작동하는지만 체크하여, 시스템 전체의 건강 상태를 빠르게 판단합니다.
  • 주요 목적:
    • 기본 동작 확인: 애플리케이션이 전반적으로 작동하는지, 즉 주요 화면이 로드되고, 핵심 기능(로그인, 주요 메뉴 접근 등)이 수행되는지를 확인합니다.
    • 빌드 품질 판단: 빌드가 안정적이면 이후에 진행될 상세한 테스트(예: 회귀 테스트)를 수행할 수 있는지 판단합니다.

적용 시점 및 특징

  • 적용 시점:
    • 새 빌드가 완료된 후
    • 배포 전에, 혹은 배포 직후 초기 검증 단계로 사용됩니다.
  • 특징:
    • 넓고 얕은 범위: 시스템의 광범위한 영역을 대상으로 하지만, 각 기능에 대한 세밀한 검증은 수행하지 않습니다.
    • 빠른 피드백: 빌드의 주요 문제를 빠르게 식별할 수 있어, 큰 결함이 발견되면 상세 테스트 이전에 즉시 문제를 수정하도록 합니다.
    • 자동화 용이: 반복적으로 수행하기에 적합하므로, 자동화 도구를 통해 쉽게 실행할 수 있습니다.

 

 

2. Sanity Test (새너티 테스트)

개념 및 목적

  • 변경 사항 검증:
    이미 존재하는 기능에 대한 수정, 버그 수정, 또는 기능 추가 후에 해당 변경이 의도한 대로 작동하는지, 다른 기능에 부정적 영향을 주지 않았는지 확인합니다.
  • 주요 목적:
    • 특정 기능 집중 검증: 변경된 부분 또는 해당 변경에 영향을 받을 수 있는 관련 기능에 대해 집중적으로 테스트합니다.
    • 개발자 확인: 개발자가 수정한 사항이 정상 작동하는지를 빠르게 검증하여, 전체 회귀 테스트 전에 문제를 조기에 발견할 수 있도록 합니다.

적용 시점 및 특징

  • 적용 시점:
    • 버그 수정이나 기능 개선이 이루어진 후
    • 수정된 코드가 포함된 새로운 빌드가 생성된 후, 변경 영역에 집중하여 검증합니다.
  • 특징:
    • 좁고 깊은 범위: 전체 시스템이 아니라, 변경된 부분이나 해당 부분과 관련된 기능만을 검증합니다.
    • 빠른 검증: 자세한 회귀 테스트를 진행하기 전에, 변경 사항이 의도대로 작동하는지를 빠르게 판단합니다.
    • 선택적 테스트: 전체 시스템 테스트 대신, 수정한 부분만 테스트하여 시간과 노력을 절약할 수 있습니다.

 

3. Smoke Test와 Sanity Test의 주요 차이점

                          Smoke Test                                                      Sanity Test

 

목적 전체 시스템의 기본 동작 여부를 신속히 확인 특정 변경 사항이나 버그 수정 후 해당 부분의 정상 작동 확인
테스트 범위 넓고 얕게 (시스템 전반의 핵심 기능) 좁고 깊게 (변경된 부분에 집중)
실행 시점 새 빌드 후, 배포 전 기능 수정/버그 수정 후, 새 빌드 내 변경 영역 검증
자동화 일반적으로 자동화되어 반복적으로 수행 상황에 따라 자동화 또는 수동으로 진행
결과 활용 큰 결함 발견 시 전체 테스트 진행 중단 변경 사항이 정상이면 상세 회귀 테스트로 진행

'QA' 카테고리의 다른 글

회귀 테스트  (0) 2025.04.05
QA ( Quality Assurance )란?  (1) 2025.03.30
릴리즈 품질 기준안  (0) 2025.03.30
Full-TC와 탐색적 검증 (Exploratory Testing)  (0) 2025.03.30