EasyMock

2016/06/26

Junitを書くときに、依存しているクラスのモックを作成する。

複数回呼び出しを定義するにはtimes(int n)を使用する。
EasyMock.expect(request.getParameter(param)).andReturn(ret).times(n);

少なくとも1回の呼び出しを定義するにはatLeastOnce()を使用する。
EasyMock.expect(request.getParameter(param)).andReturn(ret).atLeastOnce();

定義した回数だけモックが正しく呼ばれたか確認する必要がない場合andStubReturn()を使用する。
EasyMock.expect(request.getParameter(param)).andStubReturn(ret);
あるいはanyTimes()を使用する。
EasyMock.expect(request.getParameter(param)).andReturn(ret).anyTimes();

引数
・特定の値にしない場合anyObject()、isA()を使用する。

・その他のよく使うメソッド

・注意点
複数の引数をとる場合、具体値とanyObject()を混ぜて使用することはできない。
具体値とmatcherを一緒に使用する場合は、具体値の方にEasyMock.eq()を使用してmatcherにすればよい。

戻り値がないメソッドをモックにするにはexpectLastCall()を使用する。

EasyMock.expectLastCall()にもtimes(n)、once等をつなげることができる。

-Java
-