问题标签 [devel-cover]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - 如何在 mod_perl2 下运行 Devel::Cover?
它也不适用于 prefork。
被use
录取startup.pl
,Devel::Cover
问题
perl 5.8.9,Apache 2.2.13。我的操作系统是 FreeBSD,如果这很重要的话。报告了win32
同样的问题。
更新:这是输出PerlTrace all
perl - 使用 Devel::Cover 和 ModPerl::Registry 不覆盖运行时
当我运行Devel::Cover
时ModPerl::Registry
,除了BEGIN
块之外,我没有得到任何覆盖信息。当我Devel::Cover
从命令行或作为 CGI 运行相同的脚本时,一切正常(显然)。
如何让Devel::Cover
“看到”我的代码在运行时执行?
这是Devel::Cover
我的相关内容httpd.conf
:
这是startup.pl
:
(如您所见,我为Devel::Cover
since startup.pl
is running by 做了一个猴子补丁root
,但工作进程在不同的用户下运行,否则他们无法读取由 . 创建的目录startup.pl
。如果您知道更好的解决方案,请记下.)
perl - Perl 的 Devel::Cover 输出中的列是什么意思?
在“Perl 构建、单元测试、代码覆盖率:Kurt W. Leucht 的完整工作示例”中,我们看到我们运行build testcover
并押注覆盖率报告。我们在“文件封面”图中看到了结果。谁能说出 stmt、bran、sub 和 time 下显示的数字是什么意思?
perl - Devel::Cover - 仅子程序覆盖
我只想在我的 perl 文件中覆盖子程序。所以在主文件中我插入了以下语句:
主文件.pl
如果我运行 mainfile.pl 它会显示错误:
如何解决此错误?但是当我只使用它时use Devel::Cover;
它可以正常工作。
perl - 让 Devel::Cover 覆盖特定路径中的所有文件
我的任务是清理一些写得不好但测试数量惊人的遗留代码。其中一些测试在如下文件中运行代码:
我非常希望将这些内容包含在我的报道报告中。事实上,我很想确保我可以在 、 和 中包含所有内容(无论扩展名如何)lib/
,fcgi/
而在任何其他目录中都不包含任何内容。utils/
这是我的许多尝试之一:
失败!
我还尝试创建简单的 Build.PL 或 Makefile.PL 脚本,并在运行“cover -test”或“./Build testcover”等内容时不断收到“未定义测试”。
这是 Devel::Cover 0.88 和 perl 版本 5.12.2
perl - 如何在 Devel::Cover 的报告中列出未发现的 pm/pl 文件
我的目录/文件是这样的:
start.pl 是一个交互式程序,它会根据我的选择调用不同的 pm。
当我运行 start.pl 时
输出 html 报告将列出所有调用的 pms start.pl。我想列出所有 pms。所有,包括那些被调用的 pms start.pl 和那些没有被调用的。这将帮助我获得在当前测试期间未使用的 pm。
这可以由 Devel::Cover 完成吗?
perl - 我应该如何使用 Devel::Cover 的结果?
我应该如何使用结果Devel::Cover
来更改代码?我接下来要如何处理我的代码?
perl - 如何用Devel::Cover标记`//`条件?
我有以下逻辑:
对于 where和都未定义return
的条件,该语句将永远不会被覆盖。所以覆盖率报告指出这种情况是未发现的:$x
$y
有没有办法让我将该条件标记为uncoverable
?在行上方添加uncoverable condition false
修复了覆盖率摘要,但当我查看详细信息时,条件覆盖率仍为 67%。
Devel::Cover 是否处理//
操作员?
另一方面,如果我将die
行更改为等效项:
这条线也被覆盖了 67%。
这可能是一个错误吗?
perl - 开发::覆盖 HTML 输出
我正在使用 Devel::Cover 来看看我们的测试套件实际上测试我们的代码库的效果如何。我运行我们所有的测试-MDevel::Cover
似乎都没有失败或崩溃,但是覆盖表的 HTML 输出对于我们所有的模块都有如下条目:
列出的BEGIN
s 数量似乎与use Module::X
源文件中的语句数量相匹配,但确实使 HTML 输出变得混乱。有什么办法可以禁用此功能?我在教程或 Github 问题跟踪器中没有看到任何提及。
perl - Devel::Cover 使用 mod_perl2 启动后不收集任何数据
我想检查 Selenium 对我的 Web 应用程序的覆盖范围,该应用程序在 CentOS 6.5 上的 mod_perl2 上运行。
所以我安装了 Devel::Cover,放入use Devel::Cover;
我的 httpd.conf<Perl>
部分,然后重新启动 Apache。它会立即从我的自定义 ErrorLogging.pm 模块中写入一些覆盖率数据,但是如果我通过浏览器点击应用程序的任何页面,则不会再发生任何事情。
我也尝试在以下位置进行更改httpd.conf
:
...只是为了确保它会从同一进程中收集所有数据。但是,重新启动 Apache 并再次尝试后,结果是一样的。
更新:我也尝试使用此线程中提到的启动httpd
,但-D ONE_PROCESS
结果或多或少是相同的,除了在完成测试时我必须 Ctrl+C 服务,因为它接管了终端,并且此时它出现了段错误. 但最终的覆盖率数据库几乎是相同的。
文档没有提到我能看到的任何不同。如何让 Devel::Cover 记录代码执行的覆盖率数据,这些数据是响应通过 mod_perl2 的实际浏览器请求而发生的?