6

考虑这个代码片段: -

Whatever mock = EasyMock.createMock( Whatever.class );
mock.doSomething();
EasyMock.expectLastCall();   // <- Does this do anything?
EasyMock.replay( whatever );

expectLastCall()这里真的有什么作用吗?在我的测试中添加或删除这一行似乎没有任何区别。

.andThrow显然,如果您在调用中添加or.atLeastOnce()等​​,这很有用。这不是我要问的。

4

1 回答 1

6

不,您通常只expectLastCall()在需要结果来指定行为时使用。这就是它的目的。

当然,如果您发现它使您的测试更具可读性,那么调用它并没有什么坏处。例如,为了保持一致性,我可能会这样做——如果我不得不调用它两次以指定更多行为,我可能会第三次包含它,即使我不需要。我可能会明确添加默认行为,只是为了增加一致性。

于 2012-05-22T05:46:18.897 回答