junitとは? わかりやすく解説

Weblio 辞書 > コンピュータ > IT用語辞典 > junitの意味・解説 

JUnit

プログラミングのほかの用語一覧
Java:  JBuilder  JOGL  JCP  JUnit  JSON  JAX-RPC  J2EE

JUnit

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/02/16 15:12 UTC 版)

JUnit
開発元 Kent Beck, Erich Gamma, David Saff, Mike Clark
最新版
5.7.1 / 2021年2月5日 (4年前) (2021-02-05)
リポジトリ
プログラミング
言語
Java
対応OS クロスプラットフォーム
種別 単体テストツール
ライセンス Eclipse_Public_License
公式サイト http://junit.org
テンプレートを表示

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

概要

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

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

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

特徴

  • 一度作成すればすばやくテスト可能である。
  • その後はテストコードを標本とすることでバグ訂正が容易となる。
  • テストコードを見れば仕様が一目瞭然となる。
  • 誰でも同じテストを行えるようになる。
  • 独自のテストコードによるテスト作成の手間を省ける。

問題点

  • 仕様変更ごとにテストコードを作り直さなければならない。
    • EclipseなどのIDEを使うことで、テストコードの再作成によって生じる手間を軽減することもできる。
    • エクストリーム・プログラミング(XP)などのテスト駆動開発の開発形態の場合、問題が解消される場合がある。なぜなら、テスト駆動開発では、テストコード自体が仕様であるという考え方に立つからである。
  • テストコードの作成に時間がかかる。
    • EclipseなどのIDEを使うことでテストコードの作成を高速化することもできる。
    • 「テストは機能テストであり、内部ロジックの確認ではない」という考え方に立つと問題が解消される場合がある。

JUnit4の新機能

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

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

  • @Test – そのメソッドがテストメソッドであることを示す。このメソッドにテストを記述する。従来のJUnitでメソッド名がtestで始まるメソッドと同じ。
  • @Before – このアノテーションが付加されたメソッドは、@Testアノテーションが付いたメソッドを実行するたびに事前に実行されることを意味する。JUnit4以前のsetup()メソッドと同じ。
  • @After – このアノテーションが付加されたメソッドは、@Testアノテーションが付いたメソッドを実行するたびに、必ず後から実行されることを意味する。JUnit4以前のtearDown()メソッドと同じ。
  • @BeforeClass – このアノテーションが付加されたメソッドは、そのテストクラスを呼び出す前に実行される。
  • @AfterClass – このアノテーションが付加されたメソッドは、そのテストクラスを呼び出した後に実行される。

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

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

  • TestNG - 'Test the NextGeneration'の略とされている。Java SE 5から追加されたアノテーションを利用して、クラスメソッドにTest/testと命名する必要がなくなった。JUnit4では、同様に命名規則が緩くなった。他にもJUnit4では使用できない機能が追加されている[1]
  • JxUnit - JUnitはprivateなメソッドをテストできないが、JxUnitはテスト可能。内部でリフレクションを利用している。
  • Jakarta Cactus - Servletの単体テストだけでなく、統合テストを実行できる。
  • MockObject - テスト用にオブジェクトを偽装する。
  • djUnit - JUnitのテストをそのまま実行でき、カバレッジレポートの出力などができる。

脚注

関連項目

外部リンク


junit

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/01/13 01:34 UTC 版)

Apache Ant」の記事における「junit」の解説

テストフレームワークJUnitを使ってJavaプログラムテストする

※この「junit」の解説は、「Apache Ant」の解説の一部です。
「junit」を含む「Apache Ant」の記事については、「Apache Ant」の概要を参照ください。

ウィキペディア小見出し辞書の「junit」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「junit」の関連用語

junitのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



junitのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2025 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリの【JUnit】の記事を利用しております。
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのJUnit (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのApache Ant (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS