スクリプトのテスト
ふつうは、Test::Scriptをつかうのだけど、このモジュールは CPAN レイアウトじゃないとうまく動いてくれない。(blib とかみてるので、CPAN レイアウトにして、make test じゃないと動かないみたいです)
ただ、どうしても「コンパイルエラーくらいはしらべたいなー」と思って*1、こんな感じのものをでっち上げた。
#!/usr/bin/perl use strict; use warnings; use Test::More; use Capture::Tiny qw(capture); my $script_dir = "./bin"; my @scripts = grep { $_ =~ qr/\.pl$/ } glob "$script_dir/*"; for my $script ( @scripts ) { my $status = 0; my ($out, $err) = capture { $status = system("perl -I ./lib -cw $script"); }; ok( $status == 0, $script) or diag $err; } done_testing();
問題は解決できたけど、ちょっと遅いなー、というのが難点です。。。