【问题标题】:easymock returning null instead of my valueeasymock 返回 null 而不是我的值
【发布时间】:2014-03-18 16:36:47
【问题描述】:

我不确定为什么“指标”最终会为空。我希望该方法始终为我的测试返回相同的值

    CountMetric countMetric = new CountMetricStub("count");
    expect(metricManager.getOrCreateCountMetric(anyObject(String.class))).andStubReturn(countMetric);

    CountMetric metric = metricManager.getOrCreateCountMetric("ASDF");

    assertNotNull(metric);

有什么想法我在这里做错了吗?

谢谢, 院长

【问题讨论】:

    标签: easymock


    【解决方案1】:

    你需要重播模拟

    CountMetric countMetric = new CountMetricStub("count");
    expect(metricManager.getOrCreateCountMetric(anyObject(String.class))).andStubReturn(countMetric);
    EasyMock.replay(metricManager); //Add this line
    
    CountMetric metric = metricManager.getOrCreateCountMetric("ASDF");
    
    assertNotNull(metric);
    

    目前,metricManager 仍处于记录模式,这意味着对其方法的任何调用都只是执行默认行为。

    如果你在那里也有对EasyMock.verify() 的呼叫(没有对replay() 的呼叫)EasyMock 会告诉你在记录模式下你不能呼叫验证。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-23
      • 1970-01-01
      • 1970-01-01
      • 2011-05-18
      相关资源
      最近更新 更多