【Java】EasyMock ~入門編~

【1】設定手順

1)EasyMock をダウンロードする

* 下記URLからEasyMockを取得する。
 => ここから、取らずにMainページから取得したものを
 使ったのでコンパイルされずにはまった。。。

http://www.easymock.org/Downloads.html

2)ダウンロードしたJarをEclipseに取り込む

* easymock-2.5.2.jar
* easymock-2.5.2-javadoc.jar
* easymock-2.5.2-samples.jar
* easymock-2.5.2-sources.jar
* easymock-2.5.2-tests.jar

3)プログラムを書く

まず手始めに、上記サンプルプログラムを使って、Mockを理解する。
~~~~~
[1] インターフェイス
 => 「リスト 1. ExchangeRate」、どのように行うかを規定していない
[2] テスト対象クラス
 => 「リスト 2. Currency クラス」
[3] テストクラス
 => 「リスト 3. CurrencyTest クラス」←JUnit テストとして作成
~~~~~
以下が参考になる。

http://www.ibm.com/developerworks/jp/java/library/j-easymock.html#N10085

【2】サンプル

import junit.framework.TestCase;
import org.easymock.EasyMock;
import java.io.IOException;

public class CurrencyTest extends TestCase {

    public void testToEuros() throws IOException {
        Currency testObject = new Currency(2.50, "USD");
        Currency expected = new Currency(3.75, "EUR");
        
        ExchangeRate mock = EasyMock.createMock(ExchangeRate.class);
        // 期待値を設定しておく。
        EasyMock.expect(mock.getRate("USD", "EUR")).andReturn(1.5);
        EasyMock.replay(mock);

        // 実際のテストはここから
        Currency actual = testObject.toEuros(mock);
        
        assertEquals(expected, actual);
    }
}

参考文献

http://prepro.wordpress.com/2008/12/10/easymock%E3%82%92%E4%BD%BF%E3%81%86/
http://www.geocities.jp/nn_51/easymock/EasyMock2_2_Documentation.html

関連記事

Mockito ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2014/07/18/233904
Mockito ~ 基本編 ~
https://dk521123.hatenablog.com/entry/2014/07/19/121409