exhaustive testing

Executing a program with all possible combinations of inputs or values for program variables.