본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

결정 테이블 테스트(Decision Table Testing)는 입력 조건들의 참·거짓 조합과 그 조합마다 수행해야 할 동작을 표로 정리하고, 표의 각 규칙(열)을 테스트케이스로 삼는 명세 기반 테스트 설계 기법이다.

업무 규칙이 "회원이고 구매액이 5만 원 이상이면 무료 배송, 회원이 아니면 …"처럼 여러 조건의 조합으로 정해질 때 쓴다. 조건을 행으로, 조건 값의 조합(규칙)을 열로 놓으면 빠진 조합이나 모순된 규칙이 표 위에 그대로 드러난다. ISO/IEC/IEEE 29119 파트 4와 ISTQB 기초 실러버스 모두 결정 테이블 테스트를 대표적인 명세(블랙박스) 기반 기법으로 다룬다.[1][2]

구역 내용
조건(condition) 판단에 쓰이는 입력 조건. 예: 회원인가, 구매액 5만 원 이상인가
동작(action) 조건 조합에 따라 시스템이 하는 일. 예: 무료 배송, 할인 적용
규칙(rule) 조건 값의 한 조합과 그때의 동작. 표의 열 하나

조건이 n 개이고 모두 참·거짓 두 값이면 규칙은 최대 2n 개다. 결과가 같은 규칙을 합치거나 일어날 수 없는 조합을 지워 표를 줄인다(축약 결정 테이블).[2]

규칙1 규칙2 규칙3 규칙4
회원 참 참 거짓 거짓
구매액 5만 원 이상 참 거짓 참 거짓
무료 배송 O - O -
회원 할인 O O - -

규칙이 넷이므로 테스트케이스도 넷이 나온다. 각 규칙을 적어도 한 번 시험하는 것이 기본 커버리지 기준이다.

결정 테이블 커버리지는 시험한 규칙(열) 수 ÷ 전체 규칙 수로 잰다. 테스트케이스마다 조건의 참·거짓을 계산해 어느 규칙에 해당하는지 찾고, 서로 다른 규칙의 개수만 센다. 두 테스트케이스가 같은 규칙에 해당하면 하나로 센다. 예를 들어 조건 3개(규칙 8개) 표에서 테스트케이스 4개가 규칙 1, 4, 8, 1 에 해당하면 커버리지는 3/8 이다. 경계값(예: −100 ≤ X 에서 X = −100, X + Y ≥ 150 에서 합이 정확히 150)을 넣을 때는 부등호에 등호가 있는지 확인해야 규칙을 잘못 고르지 않는다.

다른 기법과 구별하기

편집 원본 편집
기법 테스트케이스를 만드는 근거 예
결정 테이블 테스트 조건 조합별 업무 규칙 회원 여부와 구매액 조합에 따른 배송·할인
원인-결과 그래프 원인·결과의 논리 그래프를 먼저 그리고 결정 테이블로 바꾼다 제약(배타·요구 등)을 그래프에 표시
동치 분할 테스트 입력 값을 같은 처리를 받는 구간으로 나눈다 나이 0~17, 18~64, 65 이상
메타모픽 테스트 입력을 바꿨을 때 출력 사이에 성립해야 할 관계 출발지·목적지를 바꿔도 거리가 같다
요구사항 기반 테스트 요구사항 하나하나가 구현되었는지 추적해 확인한다 요구사항 추적표의 항목마다 테스트

결정 테이블은 표 한 장 안에서 조건 조합을 다루고, 메타모픽 테스트는 두 번 이상의 실행 결과 사이의 관계를 다룬다는 점에서 서로 다르다.

  1. ↑ 「ISO/IEC/IEEE 29119-4:2021 Software and systems engineering - Software testing - Part 4: Test techniques」, ISO, https://www.iso.org/standard/79430.html, 확인일: 2026-11-04.
  2. ↑ 2.0 2.1 「Certified Tester Foundation Level Syllabus v4.0」, ISTQB, 2023, 4.2.3 Decision Table Testing, https://www.istqb.org/certifications/certified-tester-foundation-level, 확인일: 2026-11-04.