I've seen that before, but I'm sure I'm missing something.
If I put HARNESS_PERL_SWITCHES=-MDevel::Cover prove t at the command line, I get
HARNESS_PERL_SWITCHES=-MDevel::Cover: Command not found.
Fine, your shell doesn't understand that way of setting an environment variable before running a program. Simply put all you have to do is set the environment variable "HARNESS_PERL_SWITCHES" to "-MDevel::Cover" before running prove, I won't bother giving you the specific syntax but I am sure you can work it out for yourself.
The first command deletes any existing coverage database. On the second line we set an environment variable for Test::Harness, HARNESS_PERL_SWITCHES to a Perl command-line switch that imports Devel::Caller. This is all that's required of you. Each of your test programs will now run with Devel::Caller loaded and analyzing execution in the background.