【问题标题】:Does "EasyMock.expectLastCall();" do anything without a further call to resulting IExpectationSetters?是否“EasyMock.expectLastCall();”在不进一步调用生成的 IExpectationSetters 的情况下做任何事情?
【发布时间】:2012-05-22 05:40:17
【问题描述】:

考虑一下这段代码 sn-p:-

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

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

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

【问题讨论】:

    标签: void easymock


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 2021-10-16
      • 2017-08-11
      • 1970-01-01
      • 2023-04-08
      • 2019-07-13
      • 2016-08-25
      • 2018-01-17
      • 2020-04-07
      • 2014-08-29
      相关资源
      最近更新 更多