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.