【问题标题】:How to use EasyMock expect如何使用 EasyMock 期望
【发布时间】:2013-09-27 13:47:53
【问题描述】:

期望似乎对我不起作用:

    package com.jjs.caf.library.client.drafting;

import static org.junit.Assert.*;

import org.easymock.EasyMock;
import org.junit.Before;
import org.junit.Test;

import com.jjs.caf.library.client.CustomerManager;
import com.jjs.caf.library.client.UserBookLimiter;

public class DraftTest {

    UserBookLimiter userBookLimiter;
    int expected = 5;

    @Before
    public void setUp() throws Exception {
        userBookLimiter = EasyMock.createMock(UserBookLimiter.class);
        EasyMock.expect(userBookLimiter.getMaxNumberOfBooksAllowed()).andReturn(5);
    }

    @Test
    public final void test() {
        assertEquals(expected, userBookLimiter.getMaxNumberOfBooksAllowed());
    }

}

它应该是 5,但我得到 0,好像期望根本不存在......

【问题讨论】:

    标签: java easymock


    【解决方案1】:

    您需要在模拟对象上调用 replay 方法,以便它开始返回您配置的内容。

    【讨论】:

    • 补充说明:如果 DraftTest 是类而不是接口,则必须使用 org.easymock.classextension.EasyMock.*
    【解决方案2】:

    好的,经过分析,我终于通过添加EasyMock.replay(userBookLimiter);使其工作了

    所以设置方法是这样的:

    @Before
    public void setUp() throws Exception {
        userBookLimiter = EasyMock.createMock(UserBookLimiter.class);
        EasyMock.expect(userBookLimiter.getMaxNumberOfBooksAllowed()).andReturn(5);
        EasyMock.replay(userBookLimiter);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多