powermock 测试一直报空指针引入redisTemplate

//引入redisTemplate
    @Resource(name = "cacheRedis")
    private RedisTemplate cacheRedis;
//代码(这一行用powermock怎么写测试用例。cacheRedis.opsForValue()一直报空指针)
 Object object =  cacheRedis.opsForValue().get(redisKey);

//另一个这就报错:MapperException  无法获取实体类UserRisk对应的表名
Example example = new Example(UserRisk.class);

powermock ,是用来mock静态和私有方法的,你这个用普通的mock就够用,mock需要先将RedisTemplete给mock掉,然后在进行调用,把单侧的写法贴出来看看,应该是你没有吧RedisTemplete这个对象mock出来
举个例子 :
如果你需要被单侧的类是这样的:

public class DemoTe {

    //引入redisTemplate
    @Resource(name = "cacheRedis")
    private RedisTemplate cacheRedis;


    public Object demo(String redisKey){
        return cacheRedis.opsForValue().get(redisKey);
    }

}

那么,你的单测应该是这样的:

public class DemoTeTest {
    @Mock
    RedisTemplate cacheRedis;//mock需要调用的类
    @InjectMocks
    DemoTe demoTe;//mock本类

    @Before//自动生成的方法
    public void setUp() {
        MockitoAnnotations.initMocks(this);
    }

    @Test
    public void testDemo() throws Exception {
        //mock掉这个方法
        Mockito.when(cacheRedis.opsForValue(any())).thenReturn(new Object());
        //发起调用
        Object result = demoTe.demo("redisKey");
        //校验参数
        Assert.assertEquals("replaceMeWithExpectedResult", result);
    }
}