🧪 Software Testing · 3/8 · 약 8분

시리즈 전체 보기

커버리지는 검증 진행 상황을 빠르게 보여 주는 강력한 요약값이다. 그래서 처음에는 비율이 높으면 충분히 확인한 것이고, 낮으면 시험을 더 추가해야 한다고 단순하게 생각했다.

하지만 숫자만으로는 어떤 중요한 조건이 빠졌는지, 실행하지 못한 이유가 무엇인지, 관찰한 경로가 실제 요구사항과 어떻게 연결되는지 알 수 없었다. 커버리지는 결론이 아니라 다음 질문을 고르는 지도에 더 가까웠다.

#Coverage · #RiskBasedTesting · #Traceability · #Testing

이 글에서 다룰 것

1. 숫자는 관찰 범위의 요약일 뿐이다

커버리지가 알려 주는 것 커버리지만으로 알기 어려운 것
정의한 측정 기준에서 어느 범위를 관찰했는가 관찰한 결과가 요구사항을 충족했는가
미실행 항목이 어디에 남아 있는가 미실행 이유가 위험한 누락인지 정당한 예외인지
회차 사이 관찰 범위가 어떻게 변했는가 중요한 조건 조합이 충분히 포함됐는가
추가로 살펴볼 후보가 무엇인가 어떤 후보부터 확인해야 하는가

같은 비율도 의미가 다를 수 있다. 중요도가 낮은 반복 경로를 많이 실행한 경우와, 핵심 실패 조건을 포함한 경우를 숫자 하나로는 구분하기 어렵다. 먼저 측정 대상과 범위를 명확히 하고, 요구사항과 연결해 해석해야 한다.

커버리지 수치
      ↓
미실행 경로 확인
      ↓
REQ-001과 연결
      ↓
위험·실행 가능성·예외 사유 판단
   ↙          ↓          ↘
추가 시험   입력 보완   예외 검토

2. 미실행 1건을 세 가지 질문으로 바꿨다

가상의 REQ-001에 정상 흐름과 예외 흐름이 있다고 하자. 커버리지 리포트에서 예외 흐름이 미실행으로 보였을 때 바로 실패라고 단정하지 않고 다음 순서로 살펴볼 수 있다.

  1. 이 경로가 어떤 요구사항과 위험에 연결되는가?
  2. 실행하지 못한 이유가 입력 부족, 환경 제약, 기능 미도달 중 무엇인가?
  3. 새 시험, 입력 보완, 예외 승인 중 어떤 행동이 필요한가?
가상 상황 해석 다음 행동 후보
핵심 요구사항의 실패 경로가 미실행 영향은 크고 관찰 근거는 부족함 우선 시험 입력을 설계
현재 환경에서 만들 수 없는 조건 시험 가능성에 제약이 있음 대체 관찰 방법 또는 예외를 검토
더 이상 사용하지 않는 기능의 경로 측정 범위 자체가 오래됐을 수 있음 요구사항과 범위를 재확인