I'm asked about data providers almost every time I introduce a developer to PHPUnit. Once you understand them, they're quite clear, but on first pass they seem to give developers pause.
So what are they? Practically, a data provider is any static method that produces an array of arrays. The outer array...