用PowerMock mock static方法
2024-10-12 04:38:32
在编写代码时,经常需要调用别人已经写好的工具类,而这些工具提供的方法经常是static方法,在这里,直接贴出《PowerMock实战手册》中的例子
待测试方法:
public class EmployeeService {
public int getEmployeeCountWithStatic() {
return EmployeeUtils.getEmployeeCount();
}
}
引用的工具类
public class EmployeeUtils {
public static int getEmployeeCount() {
throw new UnsupportedOperationException();
}
}
测试方法:
@PrepareForTest(EmployeeUtils.class)
public class EmployeeServiceTestWithStaticTest extends PowerMockTestCase{ private EmployeeService employeeService; @ObjectFactory
public ITestObjectFactory getObjectFactory() {
return new PowerMockObjectFactory();
} @BeforeMethod
public void init(){
employeeService = new EmployeeService();
} @Test
public void testGetEmployeeCountWithStatic() {
PowerMockito.mockStatic(EmployeeUtils.class);
PowerMockito.when(EmployeeUtils.getEmployeeCount()).thenReturn(10);
int count = employeeService.getEmployeeCountWithStatic();
Assert.assertEquals(10, count);
}
}
重点是
PowerMockito.mockStatic(EmployeeUtils.class);
mock类EmployeeUtils中的所有static方法
最新文章
- [LeetCode] Increasing Triplet Subsequence 递增的三元子序列
- java sound初探
- nginx+tomcat+dubbo单机部署多台dubbo应用
- 根据网址把图片下载到服务器C#代码
- Spring、Spring MVC、MyBatis整合文件配置详解
- curl 查看一个web站点的响应时间(rt)
- Openvswitch原理与代码分析(1):总体架构
- Winform容器标签 打印标签 对话框控件
- yum update Transaction Check Error
- Android5.0之Activity的转场动画
- 1160 蛇形矩阵(codevs)
- VS2013和VS2015中MVC 区域路由匹配顺序相反
- beego 各种形式的路由实例
- 【转载】基于rasa的对话系统搭建(上)
- centos部署flask
- ProxySQL
- Android内容提供者(Content provider)
- 认识OpenStack中的flatnetwork
- s3cmd在配置后使用时提示ERROR: S3 error: 403 (InvalidAccessKeyId): The AWS Access Key Id you provided does not exist in our records.
- windows下的IO模型之完成端口
热门文章
- 【转载】推荐5款超实用的.NET性能分析工具
- 【树莓派】【转】利用USB网卡配置树莓派为无线热点
- MVC文章汇总
- DuiLib 源码分析之解析xml类CMarkup &; CMarkupNode 头文件
- Node聊天程序实例02:chat_server.js
- angular学习input输入框筛选
- [SoapUI] 在SoapUI里用Java语言判断Excel单元格为空或者Null时出错
- 关键字volatile
- Tomcat APR &; Linux Optimization
- 改造laravel的登录流程,仅使用一个token登录laravel