我想检查 Selenium 对我的 Web 应用程序的覆盖范围,该应用程序在 CentOS 6.5 上的 mod_perl2 上运行。
所以我安装了 Devel::Cover,放入use Devel::Cover;
我的 httpd.conf<Perl>
部分,然后重新启动 Apache。它会立即从我的自定义 ErrorLogging.pm 模块中写入一些覆盖率数据,但是如果我通过浏览器点击应用程序的任何页面,则不会再发生任何事情。
我也尝试在以下位置进行更改httpd.conf
:
StartServers 1
MinSpareServers 1
MaxSpareServers 1
...只是为了确保它会从同一进程中收集所有数据。但是,重新启动 Apache 并再次尝试后,结果是一样的。
更新:我也尝试使用此线程中提到的启动httpd
,但-D ONE_PROCESS
结果或多或少是相同的,除了在完成测试时我必须 Ctrl+C 服务,因为它接管了终端,并且此时它出现了段错误. 但最终的覆盖率数据库几乎是相同的。
文档没有提到我能看到的任何不同。如何让 Devel::Cover 记录代码执行的覆盖率数据,这些数据是响应通过 mod_perl2 的实际浏览器请求而发生的?