Testing based on
knowledge of the program code.
You can't do
white box testing without a copy of the source code. Compare
black box testing, where only the documented
inputs and
outputs are known, and the tester should not see the code. White box testing makes
equivalence partitioning very easy, because equivalent inputs (
i.e. ones which cause the same
path through the program) are easily determined.