Why Test Design Techniques Matter
Chapter 4 of the ISTQB CTFL syllabus covers test analysis and design. The four black-box techniques — Equivalence Partitioning, Boundary Value Analysis, Decision Table Testing, and State Transition Testing — account for a significant portion of exam questions and are essential skills in real testing work.
The exam doesn't just ask you to define them. It gives you a scenario and asks you to apply them. That's what this guide prepares you for.
1. Equivalence Partitioning (EP)
The Idea
Divide input data into partitions where all values in a partition are expected to behave the same way. Test one representative value from each partition — if one value fails, all others in that partition should fail too.
Partitions can be valid (accepted by the system) or invalid (rejected).
Example: Age Validation
A form accepts ages for a children's program: 5 to 12 years old.
| Partition | Range | Type | Test Value |
|---|---|---|---|
| Below minimum | < 5 | Invalid | 3 |
| Valid range | 5–12 | Valid | 8 |
| Above maximum | > 12 | Invalid | 15 |
Minimum test cases needed: 3 (one per partition)
Exam Tip
EP reduces the number of test cases without losing coverage. The question will often ask: "What is the minimum number of test cases?" — the answer equals the number of partitions.
2. Boundary Value Analysis (BVA)
The Idea
Defects cluster at the edges of input ranges. BVA tests the boundaries of valid and invalid partitions, not just the middle values.
ISTQB v4.0 covers two variants:
- 2-value BVA: Test the boundary value and the value just outside it
- 3-value BVA: Test the value just below, the boundary itself, and the value just above
Example: Same Age Validation (5–12)
2-value BVA (boundary + one outside each boundary):
| Boundary | Test Values |
|---|---|
| Lower boundary (5) | 4, 5 |
| Upper boundary (12) | 12, 13 |
Total: 4 test cases
3-value BVA (below, on, above each boundary):
| Boundary | Test Values |
|---|---|
| Lower boundary (5) | 4, 5, 6 |
| Upper boundary (12) | 11, 12, 13 |
Total: 6 test cases (with overlap removed: 4, 5, 6, 11, 12, 13)
Exam Tip
Know which variant the question is asking for. "How many test cases for 3-value BVA?" with one numeric range = 6 values (3 per boundary × 2 boundaries, minus any overlap).
3. Decision Table Testing
The Idea
Use when behavior depends on combinations of conditions. A decision table lists all condition combinations and their expected outputs, ensuring every combination is tested.
Example: Discount Rules
An e-commerce system applies discounts based on two conditions:
- Is the user a member? (Yes/No)
- Is the order over $100? (Yes/No)
| Rule 1 | Rule 2 | Rule 3 | Rule 4 | |
|---|---|---|---|---|
| Member? | Yes | Yes | No | No |
| Order > $100? | Yes | No | Yes | No |
| Discount | 20% | 10% | 5% | 0% |
4 rules = 4 test cases (2 conditions × 2 values = 2² = 4 combinations)
When Conditions Aren't Equal
If some condition combinations are impossible or irrelevant, you can collapse the table. The exam may ask you to identify the minimum number of test cases after collapsing impossible combinations.
Exam Tip
With N binary conditions, the full table has 2^N rules. Collapsing reduces this. A question giving you a decision table and asking for "minimum test cases" usually wants the collapsed count.
4. State Transition Testing
The Idea
For systems that behave differently depending on their current state, model the system as states + transitions. Test cases exercise specific paths through the state diagram.
Example: ATM Card States
[Inserted] --correct PIN--> [Authenticated]
[Inserted] --wrong PIN--> [Attempt 1]
[Attempt 1] --wrong PIN--> [Attempt 2]
[Attempt 2] --wrong PIN--> [Card Blocked]
[Authenticated] --select transaction--> [Processing]
[Processing] --complete--> [Idle]
States: Idle, Inserted, Attempt 1, Attempt 2, Authenticated, Card Blocked, Processing
Test coverage levels:
- 0-switch coverage: Test every state at least once
- 1-switch coverage (transition coverage): Test every transition at least once — this is the standard ISTQB level
- 2-switch coverage: Test every sequence of two consecutive transitions
State Transition Table
| Current State | Event | Next State | Output |
|---|---|---|---|
| Inserted | Correct PIN | Authenticated | Welcome message |
| Inserted | Wrong PIN | Attempt 1 | Error message |
| Attempt 1 | Wrong PIN | Attempt 2 | Warning |
| Attempt 2 | Wrong PIN | Card Blocked | Card retained |
| Authenticated | Select transaction | Processing | Show options |
Exam Tip
For transition coverage: count the number of arrows in the state diagram. That's your minimum test cases for 1-switch coverage.
Choosing the Right Technique
| Scenario | Use |
|---|---|
| Input has a numeric range | EP + BVA |
| Multiple conditions affect output | Decision Table |
| System has modes or states | State Transition |
| Simple yes/no input partition | EP alone |
Real tests combine techniques. A login form might use EP for username length, BVA for password length, and a decision table for login attempt lockout behavior.
Quick Reference Summary
| Technique | Best For | Min Test Cases Formula |
|---|---|---|
| Equivalence Partitioning | Range/category inputs | Number of partitions |
| Boundary Value Analysis (2-value) | Numeric ranges | 2 × number of boundaries |
| Boundary Value Analysis (3-value) | Numeric ranges | 3 × number of boundaries (minus overlap) |
| Decision Table | Condition combinations | 2^N rules (before collapsing) |
| State Transition | Stateful systems | Number of transitions |
Master these five rows and you'll handle most Chapter 4 exam questions confidently.