Learning
토픽 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 블랙박스(명세기반/사용자)

연관: 코드 커버리지, 정적 분석, 단위 테스트