【发布时间】:2017-09-29 14:51:36
【问题描述】:
我只需要知道
1)当我在Mockito中调用when()时,它实际上是在执行mockedObject方法的行为吗?
2) 如果我在when().thenReturn() 中返回错误值,如下所示。测试用例将是“假”还是返回 50 而不是 30?
when(mockedObject.add(10,20)).thenReturn(50);
3) 为什么我需要强制使用thenReturn(),即使模拟对象方法无效? (当我不使用 thenReturn() 时它会出错。
使用 when() 方法向模拟对象添加功能。
@Test
public void testAdd(){
when(mockedObject.add(20.0,30.0)).thenReturn(50.00);
}
4) 如果我打电话
verify(mockedObject,times(1)).add(20.0, 30.0);
它会检查方法是否在模拟对象上调用,是否使用相同的参数,并且只检查对方法的调用 1 次,对吗?那么我可以使用 when() 向模拟对象方法添加 functionality 而不使用 verify() 或者它实际上需要调用 verify( ) 调用 when() 方法后
【问题讨论】:
标签: java unit-testing mocking mockito mockitowhen