1
当一次模拟一个类并在测试中嘲笑类两次时,我会得到不同的输出。我知道@Mocked嘲笑一个类的所有实例,但我不知道为什么嘲笑多次会影响新创建的对象的输出。 预期这种行为?使用@Mocked多次嘲笑同一类时的JMockit行为
测试1.打印:
@Test
public void jmockitTest1(@Mocked final Date d1)
{
new NonStrictExpectations()
{{
d1.getTime(); returns(10L);
}};
System.out.println(d1.getTime()); // prints 10
System.out.println(new Date().getTime()); // prints 10 !
}
测试2与第二嘲笑日期。打印:
@Test
public void jmockitTest2(@Mocked final Date d1, @Mocked final Date d2)
{
new NonStrictExpectations()
{{
d1.getTime(); returns(10L);
}};
System.out.println(d1.getTime()); // prints 10
System.out.println(new Date().getTime()); // prints 0 !
}