【问题标题】:Mock function not found in EasyMock在 EasyMock 中找不到 Mock 功能
【发布时间】:2015-06-01 15:14:01
【问题描述】:

我正在尝试构建我的第一个 EasyMock 测试,但是我有一个小问题,即找不到函数“mock”。

这是我非常简单的代码:

package homework;

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

import com.locusenergy.homework.Elevator;

public class ElevatorTest extends EasyMockSupport{

    private Elevator elevator;

    @Before 
      public void setUp() {
        elevator = mock(Elevator.class);

      } 

    @Test
    public void testCallElevator() {
        elevator.requestFloor(5);
    }
}

但是,我收到一个错误,即找不到模拟。我不知道如何解决这个问题。

【问题讨论】:

  • @SotiriosDelimanolis 是的!

标签: java unit-testing junit easymock


【解决方案1】:

您的代码可能会在 EasyMock 的下一个版本发布时按原样运行。

用户指南指的是mock方法,可以在master branch中找到,但在最新版本(3.3.1)中没有。

【讨论】:

    【解决方案2】:

    根据 EasyMock 的文档,示例应如下所示:

    package homework;
    
    import org.easymock.EasyMockSupport;
    import org.junit.Before;
    import org.junit.Test;
    
    import com.locusenergy.homework.Elevator;
    
    public class ElevatorTest extends EasyMockSupport{
    
        private Elevator elevator;
    
        @Before 
          public void setUp() {
            elevator = createMock(Elevator.class);
          } 
    
        @Test
        public void testCallElevator() {
            elevator.requestFloor(5);
        }
    }
    

    如此处所述:http://easymock.org/api/org/easymock/EasyMockSupport.html

    API 文档说方法名称是 createMock 就是这样。

    【讨论】:

    • 谢谢,我关注了this,他们正在使用函数 mock()。你知道我可以用什么来代替 partialMockBuilder 吗?您能告诉我为什么方法命名会有所不同吗?
    • 抱歉从未使用过easyMock ;) 只用谷歌搜索了类名检查了API Docs :D 我建议你在easymock 主页上学习入门指南。和链接的文档。密切关注您使用的版本,以阅读正确的文档!
    【解决方案3】:

    只是分享另一种方法... 您可以使用 org.easymock.IMocksControl。 您的代码将如下所示 ....

    @Before 
      public void setUp() {
       IMocksControl mocksControl = createControl();
       elevator = = mocksControl.createMock(Elevator.class); 
     }
    

    ..... 我更喜欢使用 IMocksControl。正如名称\api 所暗示的,控制其关联的模拟对象的行为。

    注意:我使用的是 easymock 3.1 版 问候, MB

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-18
      • 1970-01-01
      • 2017-05-23
      相关资源
      最近更新 更多