본문으로 바로가기

1. White-box Testing Techniques (화이트박스 테스트)

기법명  상세설명  장점  단점  간단 예시
Statement Testing and Coverage 코드 내 모든 명령문(statement)이 적어도 한 번 실행되었는지 확인하는 기법 코드 실행 누락 방지, 기본적인 커버리지 확보 복잡한 로직에서는 분기나 조건을 충분히 커버하지 못함 IF문 내 모든 명령문이 최소 1회 실행되도록 테스트 케이스 작성
Decision Testing and Coverage 모든 결정문(조건문의 분기)을 참/거짓 모두 실행하도록 테스트 조건문의 모든 분기 검사로 오류 발견 가능성 증가 단순 조건에는 적합하지만 복잡한 조건의 경우 조건별 조합은 빠짐 IF 조건이 참인 경우와 거짓인 경우 모두 테스트
Condition Testing and Coverage 복합 조건식 내 각각의 개별 조건들이 참/거짓을 모두 갖도록 테스트 각 조건별로 영향을 분석할 수 있어 상세한 결함 발견 가능 조건 개수가 많아지면 테스트 케이스 급증 IF (A > 5 AND B < 10) 에서 A와 B 조건 각각 참/거짓 테스트
Modified Condition/Decision Coverage (MC/DC) 각 조건이 독립적으로 결정 결과에 영향을 주는지 입증하는 테스트 기법 높은 신뢰성, 항공·의료 등 안전 중요 시스템에 적합 테스트 설계와 수행 비용이 많이 듦 각 조건값 변경이 결과를 바꾸는지 테스트
Path Testing 가능한 실행 경로를 모두 테스트하는 기법 (실제로는 일부 경로만 수행) 복잡한 버그 탐지 가능성 높음 경로 수가 폭발적으로 증가하여 실용적이지 않음 IF-ELSE 구문 여러 개 조합 경로를 테스트

2. Black-box Testing Techniques (블랙박스 테스트)

기법명  상세설명 장점  단점   간단 예시
Equivalence Partitioning
(동등 분할)
입력 값을 유사한 그룹(동등 클래스)으로 나누고 각 그룹 대표 값만 테스트 테스트 케이스 수 감소, 효율적 테스트 가능 잘못된 분할 시 결함 발견 누락 위험 나이 입력값 0100 중 음수, 0100, 100 초과로 분할
Boundary Value Analysis
(경계값 분석)
입력값의 경계(최솟값, 최댓값, 경계 근처 값)를 집중 테스트 경계에서 발생하는 오류 발견에 효과적 경계 외 문제는 발견하기 어려울 수 있음 나이 0, 1, 99, 100, 101 등 경계 주변 값 테스트
Decision Table Testing
(의사결정 테이블 테스트)
입력 조건 조합에 따른 결과를 표로 정리하고 모든 조합을 테스트 복잡한 조건 조합 관리 용이, 누락 방지 조합이 많으면 표가 매우 커져 관리 어려움 대출 승인 조건(신용점수, 소득, 대출금액)에 따른 결과 표 작성
State Transition Testing
(상태 전이 테스트)
시스템이 상태를 바꿀 때 발생하는 입력과 출력, 상태 변화를 테스트 상태 기반 시스템에 적합, 상태별 동작 검증 가능 상태 수가 많으면 테스트 케이스 폭증 로그인 후 로그아웃 상태, 비밀번호 변경 상태 테스트
Use Case Testing
(사용사례 테스트)
사용자의 시나리오를 중심으로 기능과 흐름을 테스트 실제 사용자 관점 테스트, 요구사항 충족 검증 시나리오 누락 시 결함 발견이 어려울 수 있음 회원 가입, 상품 주문 시나리오를 따라 테스트
반응형