使用Mockito 对方法中的私有void方法
这里用一段代码举例
public void ruleJudgement(Long tenantId, Long productId, Long equipId, List<ModelAttributeValue> modelAttributeValues, List<EquipReportValue> equipReportValues) {
//这里是一些正常的方法
// 这个是需要moke的私有方法
executeAction(ruleId);
}
}
private void executeAction(Long ruleId) {
//又一个私有方法
setFunctionRecordJson(modelFunctionRecord, rule.getDeptId());
}
private void setFunctionRecordJson(ModelFunctionRecord functionRecord, Long tenantId) {
//正常业务
}
下面就是test测试方法
@Test
public void ruleJudgementTest() throws Exception{
//RuleJudgmentServiceImpl这个是你自己moke的那个类的名字
RuleJudgmentServiceImpl spy = PowerMockito.spy(ruleJudgmentService);
//这个是你moke的那个公共方法
spy.ruleJudgement(11L,12L,13L,list,valueList);
//第一个参数是你的私有方法名字,第二个参数就是你私有方法的参数
PowerMockito.verifyPrivate(spy).invoke("setFunctionRecordJson",modelFunctionRecord,789L);
PowerMockito.verifyPrivate(spy).invoke("executeAction",123L);
}
使用Mockito 对方法中的私有void方法的更多相关文章
- 关于setInterval方法中function的定义方法
使用window对象的setInterval方法,作为第一个参数传递的function必须在全局作用域中定义,否则会出现报错而无法执行. 具体如下: 在下面的代码中,试用jQuery方式在回调函数中使 ...
- Srping MVC中Controller的void方法
第一种 通过修改response来修改页面 /** * 方式一:通过声明HttpServletResponse类型的方法入参,来使用HttpServletResponse对象. * 注意:在Contr ...
- Java-main方法中调用非static方法
java的calss中,在public static void main(String[] args) { }方法中调用非static的方法:在main方法中创建该calss的对象,用对象调用非sta ...
- java排序方法中的选择排序方法
每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完. package array; //选择排序方法 public class arra ...
- System.getProperty方法中输出路径的方法
package codegenerator;/** *@author Eilen *@date 2017年9月27日---下午3:15:09 *@描述: *@answer */public class ...
- js在控件原有的事件方法中加入自己的方法
有没有碰到过这样的情况,在一个别人的页面上,你想为某个按钮加入自己的控制逻辑,满足条件的情况下才执行原有的事件方法呢? 这个时候在不能修改其原有方法的情况下,先获取控件的事件方法,并将其包装到自己的控 ...
- Vue -- mounted方法中调用methods的方法(并取出mounted方法中回调函数的值)
结果:
- Mockito 如何 mock 返回值为 void 的方法
转载:https://unmi.cc/mockito-how-to-mock-void-method/#more-7748 最初接触 Mockito 还思考并尝试过如何用它来 mock 返回值为 vo ...
- Python类中的 私有变量和私有方法
默认情况下,Python中的成员函数和成员变量都是公开的(public),在python中没有类似public,private等关键词来修饰成员函数和成员变量.在python中定义私有变量只需要在变量 ...
- 深入理解为什么Java中方法内定义的内部类可以访问方法中的局部变量
好文转载:http://blog.csdn.net/zhangjg_blog/article/details/19996629 开篇 在我的上一篇博客 深入理解Java中为什么内部类可以访问外部类的成 ...
随机推荐
- angular + ng-zorro 表格后台分页及排序功能实现,angular + ng-zorro 表格排序不起作用解决办法
angular + ng-zorro 表格排序不起作用是因为数据是从后端获取的,也是后端分页,所以要自己写排序啦~~~~ 举例:HTML <nz-table #basicTable nzBord ...
- chrome实现下载文件JS代码弹出'另存为'窗口
1.TXT类型文件 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- 1.5万字长文:从 C# 入门 Kafka
目录 1, 搭建 Kafka 环境 安装 docker-compose 单节点 Kafka 的部署 Kafka 集群的部署 2, Kafka 概念 基本概念 关于 Kafka 脚本工具 主题管理 使用 ...
- django框架之drf:2、restful规范,序列、反序列化,drf安装及使用(django原生接口及drf接口编写)
Django之drf 一.restful规范 1.概念 REST全称是Representational State Transfer,中文意思是表述:表征性状态转移,它首次出现在2000年Roy ...
- TCP/IP RTT算法比较
TCP重传机制Timeout特点: 设长了,重发就慢,效率和性能差: 设短了,重发就快,可能导致没有丢就重发,增加网络拥塞,导致更多的超时,更多的超时导致更多的重发. TCP协议引入2个概念: RTT ...
- Flink程序打包
在基于 Flink DataStreamAPI 进行流式数据处理应用时,我们可能希望将依赖和应用程序分别打包,如此便于发布和问题定位.在较新版本的 Flink版本中推出了application模式,这 ...
- 为什么 TCP 建立连接需要三次握手(转载)
为什么 TCP 建立连接需要三次握手(转载) 原文链接:https://draveness.me/whys-the-design-tcp-three-way-handshake/ TCP 协议是我们几 ...
- 洛谷p5723
1 #include<bits/stdc++.h> 2 using namespace std; 3 int z(int a) 4 { 5 if(a==2) return 1; 6 if( ...
- ssh 连接 wsl2
修改ssh相关config https://cloud.tencent.com/developer/article/1538305 其中,端口可以设置成 2222 以防万一 然后在wsl 中执行如下命 ...
- .NET Core 项目启动时运行定时任务
1.任务需求 在每次服务启动时定时(如24小时)清理一次缓存文件 2.代码实现 1)新建文件清理类 .NET Core 提供了BackgroundService的抽象类,在 ExecuteAsync ...