Java EasyMock-创建使用枚举创建的单例模拟
我正在为我的项目生成单元测试,我有一个类似这样的单例类Java EasyMock-创建使用枚举创建的单例模拟,java,unit-testing,easymock,Java,Unit Testing,Easymock,我正在为我的项目生成单元测试,我有一个类似这样的单例类 public enum MyEnum{ INSTANCE; public String doSomething(String name){ return "My name is "+name; } } 这就是我试图进行单元测试的方式 @Test public void test(){ String name = "Nacho"; String expectedResult = "My name i
public enum MyEnum{
INSTANCE;
public String doSomething(String name){
return "My name is "+name;
}
}
这就是我试图进行单元测试的方式
@Test
public void test(){
String name = "Nacho";
String expectedResult = "My name is Nacho";
String resultToSend = "My name is Nacho";
MyEnum singletonMock = createNiceMock(MyEnum.class); //line A
expect(singletonMock.doSomething(name)).andReturn(resultToSend);
replay(singletonMock);
String actualResponse = singleton.doSomething(mock);
assertEquals(actualResponse, expectedResponse);
}
我知道这是一个毫无意义的测试,但请容忍我。我的问题是,在A行,我得到一个运行时错误,说“不能子类final类MyEnum”,我知道这是因为枚举是final的 为了模拟枚举,您必须使用PowerMock(除了EasyMock),因为EasyMock本身无法做到这一点。我理解。我会调查的。谢谢