What test design techniques do you know? Which ones have you applied in practice?
sobes.tech AI
Answer from AI
Test design techniques are methods for systematically selecting test cases to effectively cover requirements and identify defects. Main techniques:
-
Equivalence Partitioning: dividing input data into classes of equivalence where the system's behavior is considered the same. Testing with one representative from each class.
-
Boundary Value Analysis: testing values at the edges of equivalence classes, as errors often occur at boundaries.
-
Cause-Effect Graphing: constructing a graph of logical relationships between causes (inputs) and effects (outputs), then generating tests.
-
Decision Tables: representing conditions and actions in tables for systems with multiple logical conditions.
-
Code Coverage: creating tests to cover all branches, conditions, and lines of code.
-
Exploratory Testing: a flexible approach without strict scripts, based on experience and intuition.
In practice, I have applied equivalence partitioning and boundary value analysis for input form validation, decision tables for complex business logic, and exploratory testing to uncover unexpected UI errors.