7
是否可以重新定义对同一个模拟对象实例的特定期望?EasyMock - 如何重置模拟,但保持期望?
说我有这样的测试,验证OK:
List<String> foo = createMock(List.class);
expect(foo.get(1)).andReturn("Wibble").once();
expect(foo.size()).andReturn(1).once();
replay(foo);
System.out.println(foo.get(1));
System.out.println(foo.size());
verify(foo);
我会那么做的是重新模拟,维护所有定义的期望,但改变其中的一个,说:
reset(foo);
// Redefine just one of the two expectations
expect(foo.get(1)).andReturn("Wobble").once();
System.out.println(foo.get(1));
System.out.println(foo.size());
verify(foo);
由于foo.size在重置呼叫后未定义,因此暂时不工作。
一定是一个很好的方式来做到这一点,而不是每次重建预期?
在此先感谢
很好的问题......是不是有一种方法可以使用EasyMock API完成这项工作? – 2011-08-08 21:16:58