5

If I am able to start up Devel::Cover successfully and it starts to collect data in the cover_db directory, can I then kill the process and then after the fact get Devel::Cover or some other utility to process those binary Devel::Cover run files and structure files into the HTML coverage report?

To ask the question another way ... Can I use Devel::Cover to get a coverage report for a process that I am unable to stop, other than by killing the process?

This question is related to: How do I get code coverage of Perl CGI script when executed by Selenium?

Community
  • 1
  • 1
Kurt W. Leucht
  • 4,725
  • 8
  • 33
  • 45

1 Answers1

4

The way I usually handle this (say, for running tests on servers) is:

  • Generate a __DIE__ handler for the Perl process. This ensures that the process completes normally and Devel::Cover finishes the DB population

  • Send SIGINT to the process to trigger the new DIE handler.

  • run cover program on the cover_db directory after the process is dead.

DVK
  • 126,886
  • 32
  • 213
  • 327