如何使用EasyMock测试void方法

时间:2012-07-30 00:29:36

标签: java unit-testing junit easymock

我已经看到了一些关于此的问题,但我似乎无法理解我的特定问题的任何答案。

我有一个模拟对象,让我们调用“object1”,我发送给一些方法进行测试,让我们调用testMethod()。所以我最终打电话给

testMethod(object1);

进行测试。现在在这个testMethod的某个地方,会有一个调用方法的部分

object1.toggleDisplay();

这是一种无效方法。如果方法就像

那样
object1.getDisplay()

它实际上返回的东西,我通常做

EasyMock.expect(object1.getDisplay()).andReturn(whatever);

然而,这是一种无效方法,我想测试一下这确实被调用了一段时间。最简单的方法是什么?

由于

2 个答案:

答案 0 :(得分:22)

如果在过去几年内事情没有改变,那么在设定期望时会使用expectLastCall

object1.toggleDisplay();
object.expectLastCall();

答案 1 :(得分:10)

object1.toggleDisplay();
EasyMock.expectLastCall().times(5);

或静态导入EasyMock方法:

import static org.easymock.EasyMock.*;

[...]

object1.toggleDisplay();
expectLastCall().times(5);