Technique overview
This chapter covers black-box techniques, white-box techniques, experience-based techniques, and collaboration-based approaches. Beginners should spend extra time here because several topics require applying a technique, not just recalling a definition.
Technique overview
| Technique type | Main purpose | Syllabus topics | What beginners should notice |
|---|---|---|---|
| Black-box | Design tests from specifications or externally visible behavior | Equivalence partitioning, boundary value analysis, decision table testing, state transition testing | You do not need code structure; you use inputs, outputs, rules, and states |
| White-box | Design tests from internal structure | Statement testing, branch testing, coverage | Coverage measures what has been exercised, not whether the tests are sufficient by themselves |
| Experience-based | Use tester knowledge and experience | Error guessing, exploratory testing, checklist-based testing | These techniques can complement more systematic techniques |
| Collaboration-based | Use shared examples and agreement with stakeholders | User stories, acceptance criteria, acceptance test-driven development | The goal is common understanding of expected behavior |
Black-box techniques
Equivalence partitioning groups values expected to be treated the same. Boundary value analysis focuses on values at and near boundaries. Decision table testing is useful when combinations of conditions produce different actions. State transition testing is useful when behavior depends on state and events.
White-box techniques
Statement testing considers whether executable statements have been exercised. Branch testing considers whether branches in control flow have been exercised. Coverage can show what has been run, but it does not prove that no defects remain.
Experience-based and collaboration-based approaches
Error guessing uses knowledge of likely mistakes or failures. Exploratory testing combines learning, test design, and execution. Checklist-based testing uses prepared lists of conditions. User stories, acceptance criteria, and ATDD help teams describe expected behavior in shared terms.