📘 테스트 분류와 테스팅 방법


📌 개요

테스트는 단순히 실행하는 활동이 아니라
목적, 범위, 관점, 설계 방법에 따라 체계적으로 분류된다.

테스트를 올바르게 이해하려면
“어떤 기준으로 분류되는가”를 구분해야 한다.


📌 테스트 분류

테스트는 다음 기준에 따라 분류할 수 있다.


📌 테스트 레벨별 분류

테스트 수행 범위에 따른 분류

✔ 단위 테스트 (Unit Test)

✔ 통합 테스트 (Integration Test)

✔ 시스템 테스트 (System Test)

✔ 인수 테스트 (Acceptance Test)

👉 “어느 범위까지 검증하는가”의 기준


📌 테스트 유형에 의한 분류 (기능 / 비기능)

✔ 기능 테스트 (Functional Test)

✔ 비기능 테스트 (Non-functional Test)

👉 “어떤 관점으로 검증하는가”의 기준


📌 ISO 25010 품질 모델

ISO 25010은 소프트웨어 품질 특성을 정의한 국제 표준 모델이다.

✔ 주요 품질 특성

👉 비기능 테스트의 기준이 되는 품질 모델


📌 테스트 설계 기법에 따른 분류

✔ 개요

테스트 설계 기법은
테스트 케이스를 체계적으로 도출하기 위한 방법이다.


📌 정적 테스트 (Static Test)


✔ 리뷰 (Review)

사람이 직접 문서나 코드를 검토하는 방법

▪ 리뷰 유형


✔ 정적 분석 (Static Analysis)

도구를 이용하여 코드 구조를 분석

▪ 정적 분석 유형


📌 동적 테스트 (Dynamic Test)


📌 명세 기반 테스트와 구조 기반 테스트

✔ 명세 기반 테스트 (Black-box)

✔ 구조 기반 테스트 (White-box)

👉 관점 차이 : 외부 명세 vs 내부 구조


📌 경험 기반 테스트

테스터의 경험과 직관을 활용한 설계 방법


✔ 오류 추정 (Error Guessing)

▪ 오류 추정 기법

▪ 가장 효과적인 방법

오류 추정의 예시


✔ 탐색적 테스트 (Exploratory Testing)

탐색적 테스트를 가이드 없이 수행 할 때 단점

▪ 애자일 방법에서의 탐색적 테스트


🧠 전체 구조 요약


테스트는 하나의 방법이 아니라,
다양한 기준에 따라 체계적으로 분류되는 활동이다.