/ domm

I hack Perl for fun and profit

Follow me on twitter!
Atom Icom ... on Atom!
11.09.2012: Some new Blio features
04.09.2012: Vienna.pm September 2012 Techmeet
25.08.2012: Which tag to use for YAPCs?
23.08.2012: Things I learned at YAPC::Europe 2012
09.08.2012: Blio - my blogging "engine"
01.06.2012: App-ArchiveDevelCover 1.001
10.05.2012: Don't use Cache::Memcached for UTF8 strings
19.04.2012: DC-Baltimore Perl Workshop 2012
22.03.2012: Module::ExtractUse 0.25
21.02.2012: App::ArchiveDevelCover 1.000

We all love Devel::Cover, the wonderful code coverage tool by Paul Johnson. But as you might have experienced, generating coverage reports for a big test suite can take quite a time (about an hour in the case of our current project). And each new run overwrites the previous one, which (besides being a big waste of used CPU cycles) makes it hard to see any progress, lack thereof, or, even worse, regress.

So I recently wrote a hackish script to save those precious coverage reports to somewhere safe. And a few days later, I converted the hackish script to a slightly less hackish module, which I now proudly present to you:


It's basically just a bunch of slightly enhanced copy statements, but it's a clear case of "automate easy things that you do often". After running your test suite with Devel::Cover, you can do:

~/Your-Project$ archive_devel_cover --from cover_db/
            --to /var/www/coverage_reports/your_project/

And App::ArchiveDevelCover will not only save your most recent report to the specified location, but will also generate a nice-looking overview page reporting the status of each report, and informing you of the coverage trend (see the screenshot to your right...).


Comments (via senph)

an image named perl/2012_02_21_app_archivedevelcover_images/screenshot.jpg