确定是否在使用Perl的测试中调用函数

时间:2014-02-05 22:52:45

标签: perl function testing

我使用Test::More

我想知道我的某个功能是否被调用。我有两种情况:一种不会调用我的函数,另一种情况不会。这个功能没有被嘲笑,我只是想知道它是否被调用。

2 个答案:

答案 0 :(得分:6)

类似的东西:

my $called;
my $orig_function = \&YourPackage::YourFunction;
{
    no warnings 'redefine';
    *YourPackage::YourFunction = sub { ++$called; goto &$orig_function };
}
# code that may or may not call YourFunction here
ok($called, 'function called');

答案 1 :(得分:1)

看起来您即将发明代码覆盖率报告。你看过Devel::Cover了吗?它会让你的生活更轻松。