我在想,是否可以使用 EasyMock 模拟整个对象的行为,但是一旦声明具有所有预期值和结果的模拟,就可以多次使用而不关心请求的顺序?
这样做的目的是创建一个模拟实例,例如在 JUnit 测试 @BeforeClass 中,并在几个 @Test 方法中使用它。
提前感谢您的任何意见,
问候,P。
我在想,是否可以使用 EasyMock 模拟整个对象的行为,但是一旦声明具有所有预期值和结果的模拟,就可以多次使用而不关心请求的顺序?
这样做的目的是创建一个模拟实例,例如在 JUnit 测试 @BeforeClass 中,并在几个 @Test 方法中使用它。
提前感谢您的任何意见,
问候,P。
如果您对验证对模拟的调用不感兴趣,并且您唯一的目标是确保每当调用模拟上的特定方法时,它总是会返回相同的所需结果,您可以使用配置它andStubReturn()
,例如
expect(mock.getMeaningOfLifeUniverseAndEverything()).andStubReturn(42);
我认为你真的想要两件事:
你这样做后者是这样的:
expect(someMock.someMethod()).anyTimes().andReturn(someValue);
如果您的方法每次调用时都会获得不同的参数,您可以使用 anyObject() 方法忽略提供的参数。