토픽 61 / 192·소프트웨어 테스트
화이트박스 테스트 (White-box Testing)
화이트박스 테스트 (White-box Testing)
내부 구조와 동작을 알고 코드의 논리적 경로를 검증하는 구조 기반 테스트
특징: 개발자 관점, 코드 커버리지 측정, 논리적 오류 발견
- •문장 커버리지: 모든 문장 1회 실행, 가장 약한 기준
- •결정 커버리지(Branch): 모든 분기 T/F 1회, 문장 커버리지 포함
- •조건 커버리지: 각 개별 조건 T/F 1회, 결정 커버리지와 독립
- •조건/결정(C/DC): 조건+결정 동시 만족
- •MC/DC: 각 조건이 결정에 독립적 영향 증명, N조건 시 N+1 케이스, DO-178C Level A 필수
- •경로 커버리지: 모든 실행 경로, 가장 강력하나 경로 수 폭발
커버리지 강도: 문장 < 결정/조건(독립) < C/DC < MC/DC < 경로
장점: 논리적 오류 발견, 높은 커버리지
단점: 시간/비용 높음, 명세 기반 결함 미발견
비교: 화이트박스(구조기반/개발자) vs 블랙박스(명세기반/사용자)
연관: 코드 커버리지, 정적 분석, 단위 테스트