トップ 開発環境 Eclipse Java djUnitの使い方

djUnitの使い方―不慣れな方でも安心!Eclipseのクラスパス設定も補足!

djUnitの使い方について解説しています。不慣れな方がクラスパスエラーにならないように、Eclipseのクラスパス設定も補足しています。

▲記事トップへ

djUnitとは?

JUnitに付加機能を追加するEclipseのプラグインです。

EclipseでJUnitを使用する際にdjUnitをプラスすることで、コードカバレッジが表示できたり、 モックオブジェクト(ダミー部品)の自動生成やバーチャルモックオブジェクト(自動的に組み込み仕組み)が使用できて便利です。

djUnitのセットアップ

  1. https://github.com/junit-team/junit/wiki/Download-and-Install より、以下をダウンロードします。※junit.jarを後で使います。
  2. http://works.dgic.co.jp/djwiki/Viewpage.do?pid=@646A556E697420446F776E6C6F6164 より、djUnit(jp.co.dgic.eclipse.jdt.djunit_x.x_x.x.x.zip) をダウンロードします。
  3. Eclipseのpluginsフォルダに、古いバージョンのdjUnitがあるときは、Eclipseを終了し、それを削除します。
  4. ダウンロードしたzipファイルを、Eclipseのpluginsフォルダに解凍します。
  5. Eclipseを再起動します。
  6. junit.jarおよびdjunit.jarをクラスパスに通して、プロジェクトのプロパティのdjUnitの仮想モック・オブジェクトを使用するにチェックを入れます。

補足)あれっ、Eclipseのクラスパスの設定方法どうだっけ?

junit.jarおよびdjunit.jarがクラスパスに設定されないとクラスパスエラーになります。 クラスパスの設定方法を覚えていない方は以下を参考にしてください。

  1. Eclipseを起動して、プロジェクトのプロパティを開きます。(該当プロジェクトのノードを選択して、右クリックで「プロパティ」を選択する操作)
  2. Javaのビルド・パス>ライブラリーを開きます。
  3. プロジェクトの下にjarファイルを置いている場合は「Jar追加」より追加。それ以外に置いている場合は「外部Jar追加」でjarを追加します。

テストするクラス

今回は、以下のクラスをテストする例を紹介します。

テスト対象のクラス

public class Sample {
    private String msg = null;
    public void setMsg(String msg){
        this.msg = msg;
    }
    public String getMsg() {
        if (msg != null && msg.length() > 0) {
            return msg;
        } else {
            return "Hello!!";
        }
    }
}

テストケース(djUnitのモック)

次にテストケースを作成します。

テストケースは「テスト:この状態でこの入力を行えば、この処理が行われてこの結果が期待される」という プログラムの挙動を定義したものです。テストケースをまとめた1群をテストスイートと言ったりします。

import jp.co.dgic.testing.framework.DJUnitTestCase;
public class SampleTest extends DJUnitTestCase {
	public SampleTest(String name) {
		super(name);
	}
	public void testSample() {
		String defaultValue = "Hello!!";

		Sample sample = new Sample();
		sample.setMsg(null);
		String nullValue  = sample.getMsg();
		assertEquals(defaultValue, nullValue);

		sample.setMsg("");
		String blankValue  = sample.getMsg();
		assertEquals(defaultValue, blankValue);

		String settingValue = "こんにちは!!";
		sample.setMsg("こんにちは!!");
		String gettingValue  = sample.getMsg();
		assertEquals(settingValue, gettingValue);
	}
}

djUnitの実行方法

ソースをコンパイルしたら、VM引数の設定を行って実行します。

  1. テストケースのソースを選択して実行→実行の構成より、引数(VM引数)に「-XX:-UseSplitVerifier」を追加します。
  2. テストケースのソースを選択して実行→DjUnitを実行します。

実行出来ない場合はプロジェクトのプロパティの「djUnitの仮想モック・オブジェクトを使用する」にチェックが入っているか確認してください。

プロジェクトのプロパティのdjUnitのところで「カバレージを使用するにチェック」が入っていれば、djUnitカバレージ・レポートが表示されます。

最後に、観点を広げたり知識を深める参考に

テストケースのサンプル

冒頭で述べましたが、JUnitに付加機能を追加するEclipseのプラグインがdjUnitです。 djUnitの知識を深めるならテストケースを作って動かしてみるのがいいと思います。

以下のJUnitのところでEsayMockを使用したサンプルなど他のテストケースの例があります。 知識を深める参考になればと思います。

コード単体じゃなくて、画面を動かしてコード全体をテストする!

あと、JUnitでSeleniumを実行すればUIテストがおもしろくなります。 JUnitは、コード内の単体テストツールですが、Selenium WebDriverを使用するとWebアプリケーションのUIテストが行えます。

Jenkinsを使用した継続的インテグレーション(CI)まで行かなくても、ローカルの画面を自動で動かして簡単な動作確認がちょっとした時間で出来て結構使えると思います。 結合環境などにUPしたWebアプリケーションのURLを全部並べてJSエラーを検出するとかもいいかもです。 new Firefoxドライバーの部分を別のブラウザのドライバー切り替えるだけで、別ブラウザも動かせますし。

以下は他サイトですが、Seleniumの簡単なコードサンプルのページです。時間がありましたら、見てみてください。

戻る

スポンサーリンク

サイト内のページ

言語
C・C++ /HTML /Java /JavaScript /PHP /シェルスクリプト

開発環境
Ant /Burp /Eclipse /Fiddler /gcc /gdb /Git /g++ /JDK /JMeter /JUnit /Teraterm /ZAP

技術・仕様
Ajax /CORBA /Jakarta EE(旧称J2EE、Java EE) /JNI

ライブラリ/Framework/CMS
bootstrap /jQuery /FuelPHP /Lucene /MyBatis /Seasar2 /Spring /Struts /WordPress

Web API
Google Maps

ITインフラOSとミドルウェア
Linux /Windows /シェル
ActiveMQ /Tomcat /MariaDB /MySQL /Nagios /Redis /Solr

ITインフラサーバー
公開Webサーバー

ITインフラネットワーク
プログラミング /構築

ITインフラセキュリティ
公開サーバーのセキュリティ

PC製品
ZOTAC

SI
ホームページの作り方

その他
IT用語 /ITスキル体系

スポンサーリンク

関連サイト内検索ツール

zealseedsおよび関連サイト内のページが検索できます。

IPアドレス確認ツール

あなたのグローバルIPアドレスは以下です。

18.97.9.175

HTMLの表示色確認ツール

パスワード生成ツール

文字数のプルダウンを選択して、取得ボタンを押すと「a~z、A~Z、0~9」の文字を ランダムに組み合わせた文字列が表示されます。

ここに生成されます。

スポンサーリンク