如果我能够成功启动Devel::Cover并开始收集cover_db目录中的数据,那么我可以先终止该进程,然后获取事实,然后获取Devel::Cover或其他实用程序来处理这些二进制Devel::。将运行文件和结构文件覆盖到HTML覆盖率报告中?

以另一种方式提出问题...我可以使用Devel::Cover来获取我无法停止的进程的覆盖率报告,除了通过杀死该进程之外?

这个问题与:How do I get code coverage of Perl CGI script when executed by Selenium?

最佳答案

我通常处理此问题的方式(例如,在服务器上运行测试)是:

  • 为Perl进程生成一个__DIE__处理程序。这样可以确保该过程正常完成,并且Devel::Cover完成DB填充
  • 将SIGINT发送到进程以触发新的DIE处理程序。
  • 进程终止后,在cover_db目录上运行 cover 程序。
  • 关于perl - 如果我在构建testcover流程完成之前将其杀死,是否可以强制Perl Devel::Cover生成覆盖率报告?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2926017/

    10-13 05:49