1. @Mock
可以使用@Mock注解来mock对象(bean)
对应import:
import org.mockito.Mock;
2. given来设置返回值
对应import:
import static org.mockito.BDDMockito.given;
用法:使用given可以的对mock出来对象设置只方法执行的返回值 参考网址:
https://javadoc.io/static/org.mockito/mockito-core/3.2.4/org/mockito/BDDMockito.html
使用示例:
given(seller.askForBread()).willReturn(new Bread());
3. verify来验证方法被执行的次数
对应import
import static org.mockito.Matchers.anyObject;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
参考网址:
https://www.baeldung.com/mockito-verify
示例:
verify(rabbitMqProduceService, times(1))
.publish(eq(""), eq(messageProperties.getReplyTo()), anyObject());
含义:(1)rabbitMqProduceService.publish(, , )方法会被执行;
(2)且第一个参数为””,第二个参数为。。。,第三个参数为任意对象
4. ReflectionTestUtils获取和修改对象属性值
以修改对象属性值为例,三个参数分别是对象、属性名、值
ReflectionTestUtils.setField(employee, "id", 1);
参考网址:
https://www.baeldung.com/spring-reflection-test-utils