JUnit

JUnit
開発元 Kent Beck, Erich Gamma, David Saff, Mike Clark
最新版
5.12.0 / 2025年2月21日(20か月前) (2025-02-21)
リポジトリ ウィキデータを編集
プログラミング
言語
Java
対応OS クロスプラットフォーム
種別 単体テストツール
ライセンス Eclipse_Public_License
公式サイト https://junit.org
テンプレートを表示

JUnitとはJavaで開発されたプログラムにおいてユニットテスト(単体テスト)の自動化を行うためのフレームワークである。

概要

1997年に、Smalltalk のためのユニットテストのフレームワークであるSUnitをもとにして、エーリヒ・ガンマと、SUnitの開発者のケント・ベックが中心となって開発された。

単体でも動作可能だが、Apache AntやEclipseのプラグインからも利用可能である。エクストリーム・プログラミングなどの、アジャイルソフトウェア開発のいくつかの開発手法では、テスト重視が推奨されており紹介されることが多い。Javaの黎明期からテスト実行環境を提供し続けており、Javaを用いるシステム開発では必要不可欠になっている。

Java以外の言語向けにはxUnitが存在する。

特徴

問題点

JUnit4の新機能

JUnit4は、Java SE 5からアノテーションが利用可能になったため、従来の命名規則に縛られることがなくなり、さらに使いやすくなった。 従来は、テストクラス名はTestで終わる必要があった。テストしたいメソッドをテストするメソッド名には、testの接頭辞を付ける必要があった。JUnit4からは、TestCase#setUp(), TestCase#tearDown()メソッドをオーバーライドする必要は無くなり、かわりに、setUp()に相当するメソッドには@Beforeアノテーションをつけ、tearDown()に相当するメソッドには@Afterアノテーションをつけるだけで済むようになった。さらに、メソッドに@BeforeClass、@AfterClassアノテーションをつけることで、テストクラス実行前と実行後に実行したいメソッドを作ることも可能になった。

JUnit4から利用可能になったアノテーション

JUnitから派生したツール/関連ツール

JUnitから派生したツールを下記に示す。

脚注

[脚注の使い方]
  1. ↑ 参考 コード品質を追求する: JUnit 4 対 TestNG 大規模なテストでは TestNG のほうが優れたフレームワークになる理由

関連項目

外部リンク