Test design techniques
Test design techniques: equivalence partitioning and boundary values, decision tables, state transitions, pairwise testing and use cases.
5 articles in reading order
- Equivalence partitioning and boundary valuesSplitting input data into equivalence classes and choosing boundary values: two-point and three-point boundaries, examples for numbers, strings and dates.
- Decision table testingDecision table testing: conditions, actions and rules, full and collapsed tables, impossible combinations, coverage and Gherkin scenarios from a table.
- State transition testingState transition testing: states, events, guard conditions and actions, the state table with invalid transitions, coverage from all states to N-switch.
- Pairwise testingPairwise testing: the combinatorial explosion, covering every pair of parameter values, covering and orthogonal arrays, constraints and t-way testing.
- Use case testingUse case testing: use case structure after Cockburn, main success scenario and extensions, deriving test cases, scenario coverage, user stories and Gherkin.