質問

Perl用の優れた(できれば無料の)コードカバレッジツールはありますか?

役に立ちましたか?

解決

はい、 Devel :: Cover がその方法です。

モジュールを開発し、 Module :: Build を使用してインストールを管理する場合、 testcover ターゲットもあります:

 perl Build.PL
 ./Build testcover

テストスイート全体を実行し、結合されたカバレッジレポートをHTML形式で作成します。モジュールでは、モジュールを参照してカバレッジを見ることができます。

他のヒント

いつものように、CPANはあなたの友人です。 Devel :: Cover をご覧ください

前述のように、Devel :: Coverはあなたの友人ですが、あなたもそれをグーグルで検索したいと思うでしょう。ドキュメントは少しまばらで、環境を根本的に変更する場合は、インストール時に環境から取得した大量の情報でDevel :: Cover :: Incをビルドするため、再インストールする必要があります。共有CPAN環境があり、ある開発者がDevel :: Coverをインストールし、別の開発者がそれを実行しようとすると、これが職場で多くの問題を引き起こしました。奇妙な(そして誤った)結果がよくあります。

このモジュールを使用する場合は、 Devel :: CoverX :: Covered 。このモジュールは、Devel :: Coverが捨てる情報の多くをキャプチャします。とても便利です。

Moritzは、Module :: BuildでビルドされたモジュールがDevel :: Coverを簡単に使用する方法について説明しています。

ExtUtils :: MakeMakerを使用するモジュールの場合、同じ機能を呼び出すための拡張モジュールが存在します。 WriteMakefile()を呼び出す前に次のコードを追加します。

eval "use ExtUtils::MakeMaker::Coverage";
if( !$@ ) {
    print "Adding testcover target\n";
}

...コマンド 'make testcover'を実行し、Devel :: Coverにその魔法を実行させます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top