抑制@Spy注解下要测试的某一个方法

suppress(method(GenerateReportsService.class, "getFieldValueByClmRiskRpt"));
在将要测试的类中设置私有属性
field(AAA.class, "aaafilename").set(aaa, "Imma AAA");
这个有点难
从一个执行后的私有方法的java类获得私有属性
workBook=(HSSFWorkbook) field(AAA.class, "workBook").get(aaa);
模拟私有方法
        返回值 mock实例 私有方法 参数

PowerMockito.doReturn("5555").when(aaaa,"getaaaaa",Mockito.anyObject(),Mockito.anyString());

返回值空处理 原址https://blog.csdn.net/flysun3344/article/details/52065492

1.当mock一个对象,且执行此对象中的方法有返回值时,使用下面的方法:

import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

对象= mock (类名.class);
when (对象.方法 (参数)).thenReturn (方法的返回值);

 

2.当mock一个对象,且执行此对象中的方法没有返回值时,使用下面的方法:

import org.mockito.Mockito;
import org.mockito.invocation.InvocationOnMock;
import org.mockito.stubbing.Answer;

类名   对象 = Mockito.mock(类名.class);
        Mockito.doAnswer(new Answer<Object>() {
            public Object answer(InvocationOnMock invocation) {
                Object[] args = invocation.getArguments();
                return "called with arguments: " + args;
            }
        }).when(对象).方法名();

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄