JUnit.orgは16日(米国時間)、JUnitの最新版であるJUnit 4.0を公開した。JUnitはJavaで開発されているテストフレームワーム。ユニットテストをおこなうためのフレームワークとして代表的存在。
JUnit 4.0はCommon Public License Version 1.0のもとで公開されているオープンソースソフトウェア。Java開発におけるユニットテストフレームワームとしてはデファクトスタンダードの位置にあり、広く用いられている。
JUnit 4.0ではアーキテクチャがかなり変更されている。これまでjunit.framework.TestCaseのサブクラスを使ってテストのタグつけをおこなう必要があったり、testという名称からメソッド名を開始することで試験メソッドを特定するとう命名規則に従う必要があったが、JUnit 4.0では@Testアノテーションを指定するだけで済むようになっている。
なおJUnit 4.0は、タグつけとしてアノテーションを採用するようになったため、アノテーションをサポートしていないJava 1.5よりも前のバージョンでは動作しない。使用するにはJava 1.5以降の環境が必要。
JUnit 4.0を使った場合のソースコードの記述例をリスト.1に示す。これまではクラスを継承したり、命名規則に従ってメソッドを用意する必要があったが、JUnit 4.0ではリスト.1のように@Testアノテーションや@Beforeアノテーションを指定するだけで済んでいる。
JUnitはJavaのユニットテストフレームワークとしては代表的な存在だったが、記述方法が煩雑であること、複雑な成果物になっていったことなどを懸念して、別のテストフレームワークを求める声もあった。JUnit以外のユニットテストフレームワークとして代表的なものにはTestNGがある。TestNGでは最初からタグつけにアノテーションを用い、簡潔な記述で多くの処理が済むように工夫されていた。
JUnit 4.0になってTestNGと同様の機能が実現されたことになる。JUnit 4.0におけるアノテーションの記述方法はTestNGとも似ている。TestNGにはJUnit互換機能もあり、ある程度は相互に変換して使用することも可能。
| アノテーションベースのテストフレームワーク - TestNG version 4.5 [2006/2/9] |
| ライトニングJava 第29回 アノテーション(4) - 採用事例 TestNG(1) [2005/12/6] |
| アノテーション時代のユニットテストフレームワーク - TestNG 4.0 [2005/10/12] |
| 新しいJava用テスト・フレームワーク - TestNG 2.4公開 [2005/7/7] |
| マイナビ、3月より書籍連動型のクリエイティブ・デザイン系セミナー開講 [12:00 2/10] |
| Linux Mint 12 KDE登場 [10:26 2/10] |
| Dell、重複排除により最大98%のデータ削減が可能なバックアップストレージを発売 [09:44 2/10] |
| 北大、「ポジトロン断層撮影法」による脳腫瘍の性質を診断する手法を開発 [09:40 2/10] |
| NICTなど、手術支援ロボット「da Vinci」の3D裸眼映像伝送実証実験を計画 [09:36 2/10] |
|
日産、スカイラインクーペ特別仕様車「55th Limited」を55台限定発売 [16:54 2/10] ライフ |
|
Behringer、「XENYX iX」シリーズにiPad用Dock搭載の3モデルを追加 [16:51 2/10] クリエイティブ |
|
リンクス、5600DPIのレーザーセンサーを搭載した8ボタンゲーミングマウス [16:51 2/10] パソコン |
|
アスク、USBトークンキーをセキュリティキーとしたポータブルHDD2モデル [16:50 2/10] パソコン |
|
はてな、Q&Aサイト「人力検索はてな」の公式iPhoneアプリを提供開始 [16:49 2/10] 携帯 |