如果没有,EasyMock上是否存在?
感谢。
答案 0 :(得分:9)
PowerMock旨在作为EasyMock和Mockito的扩展。从马的口中说:“PowerMock是一个扩展其他模拟库的框架,例如EasyMock,具有更强大的功能。”
在任何情况下,没有EasyMock等同于expectNew,Mockito中也没有一个 - 这正是PowerMock试图填补的漏洞。话虽如此,PowerMock完全有能力与Mockito合作。以下是the documentation的示例:
如何模拟新对象的构建
使用PowerMockito.whenNew,例如
whenNew(MyClass.class).withNoArguments().thenThrow(new IOException("error message"));
请注意,您必须准备课程 为测试创建MyClass的新实例,而不是MyClass本身。 例如。如果执行新MyClass()的类被称为X,那么你必须这样做 做@PrepareForTest(X.class)以便whenNew工作。
如何验证新对象的构建 使用PowerMockito.verifyNew, e.g。
verifyNew(MyClass.class).withNoArguments();