是否有可以找到不需要的代码的模块?
作为示例,脚本不需要运行脚本的代码:
#!/usr/bin/env perl
use warnings;
use 5.12.0;
use utf8;
binmode STDOUT, ':utf8';
use DateTime;
use WWW::Mechanize;
sub my_print {
my ( $string, $tab, $color ) = @_;
say $string;
}
sub check {
my $string = shift;
return if length $string > 10;
return $string;
}
my_print( 'Hello World' );
答案 0 :(得分:4)
不是绝对的。众所周知,Perl很难在没有实际执行的情况下进行分析,以至于编译要运行的Perl程序实际上需要包含perl解释器的副本!因此,Perl的代码分析工具非常少。你可以做的是使用一个分析器,但这有点矫枉过正(正如我所提到的,需要实际执行程序。我喜欢Devel::NYTProf
。这会吐出一些HTML文件,显示eaqch line或sub多少次已执行,以及在那里花了多少时间,但这只适用于该程序的特定执行。它将允许您看到WWW :: Mechanize已加载但从未被调用,但它将无法分辨如果warnings
或binmode
对执行产生任何影响,则表示您。
答案 1 :(得分:0)
Devel::Cover
提供可能在此处使用的代码覆盖率指标。