73
71

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Java テストツールのトレンド 2014/1~2016/5

Last updated at Posted at 2016-06-05

Java テストツールのトレンド 2014/1~2016/5版

1. エコシステムに乗っかるべし

 継続的インテグレーション(CI:continuous integration)は、もはや必須のプラクティスとなりました。CIを実施するにあたり、できるだけ世の中でよく使われているツールやフレームワークを使うことが、エコシステムにスムーズに乗っかっていく鍵になります。マイナーなツールやフレームワークを採用してしまった場合の問題点を挙げてみます。

  • 採用したツールの開発が停滞していてバージョンアップによる恩恵が受けられない。
  • 他のツールのバージョンアップに採用したツールが追従できず、他のツールのバージョンアップの恩恵が受けられない。
  • 足りない機能があり社内で色々作りこんだものの、社内のスピードよりも、世の中のスピードのほうが速く、システムの改修が世の中に追従できななくなってしまう。
  • CIシステムの維持が特定の人の仕事になってしまう。
  • メンバーの教育が必要になってくる。

 最近のソフトウェアは、企業の内部で単独で作るものではなく、OSSコミュニティーの力を活用し、Webの情報を参考にしながら開発していくものになっています。コミュニティが活発に活動しているツールやフレームワークを採用することで、よりスムーズな開発を継続していくことができるのです。
ということで、最近(2014/1~2016/5)のJava系のテストツールのトレンドをまとめてみました。

2. テスティング フレームワーク

 ツールに標準で組み込まれているものを◎、各自で組み込む必要があるものを△で表示しています。Gradleは、内部にAntやJUnitを抱えているビルドツールです。Android Studioの標準のビルドツールで、Eclipseではver.4.5(Mars)から標準搭載、Jenkins ver.2では、初回起動時にプラグインのインストールを提案されます。Gradleが標準でサポートしているテストツールは、最近の傾向を反映しているため、トレンドをつかむうえで参考になります。

● 標準サポート状況

ツール JUnit TestNG Spock
Eclipse
Gradle

● Google検索トレンド
TestingFramework.png
※ 6/5に検索したため、月ごとの集計で、2016/6のデータが少なく、グラフの右端が下がります。右端の下がっている部分は、トレンド判定の上で無視してください。

3.静的解析ツール

 ソースコードの問題点を指摘してくれます。保守性向上、バグ混入予防のために導入しましょう。

● 標準サポート状況

ツール CheckStyle FindBugs PMD
Eclipse
Gradle

● Google検索トレンド
StaticAnalysis.png

4.コード カバレッジ

 UnitTestのコードカバレッジ集計ツールです。EclEmmaは、Eclipseのコードカバレッジプラグインで、内部にJaCoCoが組み込まれています。

● 標準サポート状況

ツール JaCoCo(EclEmma) Cobertura
Eclipse
Gradle

● Google検索トレンド
Coverage.png
※ Coberturaは、ポルトガル語で「報道」。Emmaは、人名。JaCoCoのEclipseプラグインの名前がEclEmma。ズバリ比較できる検索キーワードとはなりません。

5.モック フレームワーク

現在、開発が活発に行われているのはmockitoです。

● 標準サポート状況

ツール mockito EasyMock PowerMock JMockit JMock
Eclipse
Gradle
※ Pleiades Eclipseに標準インストールされている、Quick JUnit Pluginにmockitoが含まれています。

● Google検索トレンド
Mock.png

6.ビルドツール

Ant, Maven, Gradleを比較してみました。Gradleは、CIと相性がよいビルドツールで、最近人気上昇中です。ビルドは、内部でAntを実行、ディレクトリ構成の規約はMaven準拠しています。

● 標準サポート状況

ツール Ant Maven Gradle
Eclipse
AndroidStudio

● Google検索トレンド
BuildTool.png
※ 2015年は、GradleがAntを上回ったターニング ポイントになりました。

6.まとめ

人気テストツールとビルドツールの関係は、このようになります。

対応表 Ant Maven Gradle Eclipse
JUnit
CheckStyle
FindBugs
JaCoCo
mockito

対応表を作ってみると一目瞭然。GradleをベースにCIを組み立てれば、追加するプラグインはmockitoのみ。あっという間にエコなCIが完成です。
それでは、よいCIライフを(^^)/

73
71
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
73
71

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?