1. PowerMock是什么?
PowerMock是一个Java模拟框架,用于解决测试问题。
举个例子,你在使用Junit进行单元测试时,并不想让测试数据进入数据库,怎么办?这个时候就可以使用PowerMock,拦截数据库操作,并模拟返回参数。
2. PowerMock包引入
org.powermock
powermock-module-junit4
2.0.0
test
org.powermock
powermock-api-mockito2
2.0.0
test
junit
junit
4.11
test
3. 重要注解说明
@RunWith(PowerMockRunner.class) //告诉JUnit使用PowerMockRunner进行测试
@PrepareForTest({RandomUtil.class}) //所有需要测试的类列在此处,适用于模拟final类或有final, private, static, native方法的类
@PowerMockIgnore("javax.management.*") //为了解决使用powermock后,提示classloader错误
4. 示例
4.1 普通Mock
/***********************Prepare****************************/
public interface MockMapper {
public int count(MockModel model);