我有一些脚本,我已经开始使用“modulino”的想法进行单元测试.我遇到了一个问题,当使用“perl -d”调用脚本时,脚本不会运行,因为caller()返回一个true值.
我将脚本的主体包裹在main()中,并将一些子程序慢慢地从main()中拉出到它们自己的子程序中.
在脚本的顶部我有:
main(@ARGS) unless caller();
当在.t测试中调用时,它可以按我的意愿工作,而不是运行main(),所以我可以测试子程序.当我从CLI调用脚本时,它可以很好地调用main().
当我从CLI调用它时出现问题:
perl -d myscript.pl
在此阶段,调用者返回一个有效值(而不是undef),并且不调用main.
关于如何处理这个建议将非常感激.