如何在perl makefile中指定TAP::Harness::Junit?
我的perl模块有一个使用MakeMaker的Makefile.PL,如下所示:如何在perl makefile中指定TAP::Harness::Junit?,perl,makefile,Perl,Makefile,我的perl模块有一个使用MakeMaker的Makefile.PL,如下所示: #!/usr/bin/perl use strict; use warnings FATAL => 'all'; use 5.008; use ExtUtils::MakeMaker; WriteMakefile ( NAME => 'MyModule', AUTHOR => 'Subu', LICENSE => 'p
#!/usr/bin/perl
use strict;
use warnings FATAL => 'all';
use 5.008;
use ExtUtils::MakeMaker;
WriteMakefile
(
NAME => 'MyModule',
AUTHOR => 'Subu',
LICENSE => 'perl',
PREREQ_PM => {
'File::Basename' => '0',
},
TEST_REQUIRES => {
'Test::More' => '0.47',
'Test::MockModule' => 'v0.170.0',
'Test::MockObject' => '1.20180705',
'Devel::Cover' => '1.31',
'Test::File' => '1.443'
},
BUILD_REQUIRES => {
'Log::Log4perl' => '1.49',
'JSON::Parse' => '0.55',
'Time::Piece' => '1.33',
'Text::CSV' => '1.97'
},
EXE_FILES => [
'src/main/perl/MyModule/main.pl'
],
test => {TESTS => 'src/test/perl/MyModule/*/*.t
src/test/perl/MyModule/*/*/*.t'}
);
我可以使用
perl Makefile.PL
make
make test
但是,我希望使用TAP::Harness::Junit格式化输出。如何在makefile中指定它
我知道我可以用prove进行测试
prove --formatter TAP::Formatter::JUnit *.t
但是我想知道是否有一种方法可以将它插入到我的makefile中 Makefile.PL主要用于使模块cpan可安装。例如,模块安装期间将运行
make test
,以验证其在目标系统上是否正常工作。为此,更改格式化程序(并添加额外的依赖项)没有帮助
Makefile.PL
不一定是个人开发工作流程或任何持续集成脚本的所在地。例如,如果要在Jenkins服务器上生成JUnit测试报告,可能需要将prove--formatter TAP::formatter::JUnit*.t
命令放入Jenkins文件中。如果您喜欢编写Makefile,您可以为您的个人开发脚本使用单独的Makefile,尽管您必须使用make-f MyMakefile test
来调用它。Makefile.PL主要用于使您的模块可以安装。例如,模块安装期间将运行make test
,以验证其在目标系统上是否正常工作。为此,更改格式化程序(并添加额外的依赖项)没有帮助
Makefile.PL
不一定是个人开发工作流程或任何持续集成脚本的所在地。例如,如果要在Jenkins服务器上生成JUnit测试报告,可能需要将prove--formatter TAP::formatter::JUnit*.t
命令放入Jenkins文件中。如果您喜欢编写Makefile,您可以为您的个人开发主题使用一个单独的Makefile,尽管您必须使用make-f MyMakefile test
来调用它。谢谢,这很有意义。谢谢,这很有意义。