Perlで遅いテストケースを調査する方法

テストケース数が増えてくると、テスト時間が長くなっていって、全体のテストがしにくくなってきますよね。そんな中で、テスト時間が長いテストケースがあると、全体のテスト時間にもろきいてきてしまって、CIするのが大変になってくるなんてことがあります。

そういうときに、どのテストに時間がかかっていているかを調べて、そのテストケースの実行時間を改善したいということがでてきます。

そんなときに使うのが、App::Prove::Stateです。

prove -l t --state=hot,slow,save -j 9

これで.proveというファイルにテストケースの実行時間が記録されます。

このファイルから、
http://use.perl.org/~Ovid/journal/35831
に書かれたスクリプトで、遅いテストケースを調査します。

これで簡単にテストケースの実行時間が遅い物が調べられますね。

# prove --lt --timerの結果をsortするってのでもいいのかなとも思いながら。

See also:

  • App::Prove::State