Fight the Future

Java言語とJVM、そしてJavaエコシステム全般にまつわること

IT勉強会での初プレゼンなどお助けします!

勉強会でスピーカーをやりたいけど、プレゼンが初めて、苦手という方に無償でコーチできます。スライドのレビューや録画したリハへのアドバイスなどなど。Twitter@jyukutyoまでメンションでもDMでもお気軽にご連絡ください。

私はIT講師の経験があり、プレゼンはデブサミやJJUG CCCなど200人規模の経験が豊富で最大800人の前でプレゼンしました。海外ではDevoxxUSで。デブサミ2017では公募スピーカー1位、デブサミ関西2012アワードで5位となりました。

Javaのコードカバレッジツール

参考文献

Next Generation Java Testing: TestNG and Advanced Concepts

Next Generation Java Testing: TestNG and Advanced Concepts

Clover

Javaカバレッジツールとしては古参の1つ。

商用。さまざまなレポートフォーマットに対応している。

PDFでも出力可。さまざまなIDEのプラグインを提供している。

EMMA

オープンソースカバレッジツール。

クラス、メソッド、ブロックカバレッジがフルサポートされている。

複数のテストを実行して得たレポートを1つにまとめることができる。

EMMA: a free Java code coverage tool

Cobertura

同じくオープンソースカバレッジツール。

おもしろい機能としてカバレッジがあるパーセンテージを下回るとビルドを失敗させることができる。

Cobertura

Coverage Reports Don't Say What You Think They Say

カバレッジ自体は何も言っていない、ということ。

(つまり、レポートを見る人によって解釈が異なるということ。カバレッジ自体は意味を持たない。)

特にパーセンテージは意義を持たない(Irrelevant)。

カバレッジのために設計をするのは悪である(Designing for Coverage Is Evil.)。

カバレッジツールは存在しないコードはテストできない。


カバレッジはあくまで参考にしか過ぎず、

基準にするべきものではないというのがCedricの意見であり、

僕もその点には賛同する。