1. Introduction
This question checks your understanding of Decision Table Testing and how to measure test coverage by counting the number of rules (columns) covered by the executed test cases.
이 문제는 결정 테이블 테스트에서 테스트 케이스가 몇 개의 Rule(열)을 커버했는지 계산하는 능력을 평가합니다.
2. Decision Table
| Rule 1 | Rule 2 | Rule 3 | Rule 4 | Rule 5 | |
|---|---|---|---|---|---|
| Cholesterol (mg/dl) | ≤124 | ≤124 | 125–200 | 125–200 | ≥201 |
| Blood pressure (mm Hg) | ≤140 | >140 | ≤140 | >140 | – |
| Risk level | Very low | Low | Medium | High | Very high |
3. Given Test Cases
| TC# | Cholesterol | Blood Pressure | Rule Covered |
|---|---|---|---|
| TC1 | 125 | 141 | Rule 4 |
| TC2 | 200 | 201 | Rule 4 |
| TC3 | 124 | 201 | Rule 2 |
| TC4 | 109 | 200 | Rule 2 |
| TC5 | 201 | 140 | Rule 5 |
4. Coverage Analysis
There are 5 rules (columns) in the decision table. Each test case can cover exactly one rule.
결정 테이블에는 Rule이 총 5개이며, 각 테스트 케이스는 정확히 1개의 Rule만 커버합니다.
✔ Rule Coverage From Test Cases
- TC1 → Rule 4
- TC2 → Rule 4
- TC3 → Rule 2
- TC4 → Rule 2
- TC5 → Rule 5
✔ Covered rules: Rule 2, Rule 4, Rule 5
✔ Total covered = 3 out of 5 rules
➡ Coverage = (3 / 5) × 100% = 60%
총 5개의 Rule 중 3개를 커버했으므로 커버리지는 60%입니다.
5. Correct Answer
✅ Correct Answer: b) 60%
📘 Explanation (EN/KR)
- There are 5 rules to cover.
- Only Rule 2, 4, and 5 were covered.
- 3 / 5 = 60%.
전체 Rule 5개 중 3개만 테스트되었기 때문에 정답은 b) 60%입니다.
Decision Table Testing
1. What is Decision Table Testing?
Decision Table Testing is a black-box test design technique used to test systems that rely on different combinations of conditions to determine specific actions.
결정 테이블 테스트는 여러 조건(conditions) 조합에 따라 결과(actions)가 달라지는 비즈니스 규칙 기반 시스템을 테스트하기 위한 블랙박스 기법입니다.
2. Why Use Decision Tables?
- Ensures full coverage of all condition combinations
모든 조건 조합을 체계적으로 테스트 가능 - Helps find missing or conflicting rules
누락된 규칙, 충돌되는 규칙을 쉽게 발견 - Ideal for business logic, pricing, discount rules, workflows
비즈니스 규칙, 할인 규칙, 승인 흐름 등에 적합 - Each rule becomes one test case
각 Rule(열)이 1개의 테스트 케이스가 됨
3. Structure of a Decision Table
A decision table consists of:
- Conditions (입력 조건)
- Actions (출력 또는 결과)
- Rules (조건 조합 → 결과 매핑)
✔ Example Structure
| Rule 1 | Rule 2 | Rule 3 | Rule 4 | |
|---|---|---|---|---|
| Condition A | T | T | F | F |
| Condition B | T | F | T | F |
| Action | A1 | A2 | A3 | A4 |
각 Rule은 하나의 테스트 케이스가 됩니다.
4. Example — Online Discount Rules
Given:
- Condition A: Customer is a member
- Condition B: Purchase amount > $100
- Actions: Discount type
| R1 | R2 | R3 | R4 | |
|---|---|---|---|---|
| Member? | Y | Y | N | N |
| Amount > 100? | Y | N | Y | N |
| Action | 20% discount | 10% discount | 5% discount | No discount |
✔ Therefore: 4 rules → 4 test cases
→ 4개의 Rule = 4개의 테스트 케이스
5. Benefits of Decision Table Testing
- Simple visualization of complex logic — 복잡한 로직 시각화
- Covers all possible combinations — 조건 조합을 빠짐없이 커버
- Great for requirements validation — 요구사항 누락·충돌 탐지에 강력
6. ISTQB Exam Tips
- Each rule corresponds to exactly ONE test case
각 Rule = 단 하나의 테스트 케이스 - Look for impossible rules (Exam A Q22 유형)
요구사항상 불가능한 Rule을 찾는 문제 자주 출제됨 - Missing rules?
조건 조합 중 빠진 경우(누락 규칙) 확인 - Use decision tables for business policies
비즈니스 정책 테스트에서 매우 효과적
7. Common Mistakes
- Confusing Decision Table Testing with State Transition Testing
- Assuming two rules can be merged (No!)
- Not checking for contradictions between conditions and actions
가장 큰 실수는 “두 Rule을 합칠 수 있다”고 오해하거나 조건과 행동이 모순되는지 검증하지 않는 것입니다.
8. Final Summary
- Decision Table Testing = Test condition combinations
- Ideal for discounts, pricing, validation rules
- Rule = one test case
- Great for finding missing or impossible rules
결정 테이블 테스트는 조건 조합을 테스트하고 비즈니스 규칙의 누락·오류를 찾는 데 가장 강력한 블랙박스 기법입니다.
Related: More ISTQB Posts
