Data providers are a PHPUnit feature (and many testing frameworks have an equivalent) that lets you run a single test method multiple times but with different data. Larry Garflied shows some cool things you can do with them.
PHP
5 Ways to Extract Value from Overmocked Tests
Tomas shares his approach to get the most out of mocks, drop dead code, and make tests more valuable. Read more