《Java单元测试实战》——基础知识:Java单元测试技巧之PowerMock(6) https://developer.aliyun.com/article/1232474?groupCode=java
七、 私有属性
1. ReflectionTestUtils.setField方法
在用原生JUnit进行单元测试时,我们一般采用ReflectionTestUtils.setField方法设置私有属性值。
注意:在测试类中,UserService实例是通过@Autowired注解加载的,如果该实例已经被动态代理,ReflectionTestUtils.setField方法设置的是代理实例,从而导致设置不生效。
1. Whitebox.setInternalState方法
现在使用PowerMock进行单元测试时,可以采用Whitebox.setInternalState方法设置私有属性值。
注意:需要加上注解@RunWith(PowerMockRunner.class)。
《Java单元测试实战》——基础知识:Java单元测试技巧之PowerMock(8) https://developer.aliyun.com/article/1232472?groupCode=java