Jmockit如何同时mock多个类的静态方法
使用Jmockit来mock类的静态方法,网上有很多mock单个类静态方法的例子。有使用Expectations,还有使用MockUp的。
但是如果想在一个测试方法中mock多个类的静态方法,该怎么写呢。
先看mock一个类的静态方法
public class MethodClass
{
public static String publicStaticMethod()
{
return "Original public Static Method !";
} public String publicMethod()
{
return "Original public Method !";
}
}
使用Expectations来mock
@Test
public void test_mockPublicStatic1()
{
new Expectations(MethodClass.class)
{
{
MethodClass.publicStaticMethod();
result = "Mocked public static method";
}
}; System.out.println(MethodClass.publicStaticMethod());//Mocked public static method MethodClass obj = new MethodClass();
System.out.println(obj.publicMethod());// Original public Method !
}
mock多个类的静态方法,同时传入A.class,B.class。按照期望的顺序录制即可。
new Expectations(A.class,B.class)
{
{
A.publicStaticMethod();
result = "Mocked public static method"; B.publicStaticMethod();
result = "Mocked public static method";
}
};
Jmockit如何同时mock多个类的静态方法的更多相关文章
- php函数、类和对象以及类的封装、继承、类的静态方法、静态属性
		
1.函数 php内置函数可以直接使用,如果没有安装php扩展即可 自定义函数 //函数function 函数名 function dump($var = null){ //支出默认参数 ...
 - Es5中的类和静态方法 继承
		
Es5中的类和静态方法 继承(原型链继承.对象冒充继承.原型链+对象冒充组合继承) // es5里面的类 //1.最简单的类 // function Person(){ // this.name='张 ...
 - java多线程并发去调用一个类的静态方法安全性探讨
		
java多线程并发去调用一个类的静态方法安全性探讨 转自:http://blog.csdn.net/weibin_6388/article/details/50750035 这篇文章主要讲多线程对 ...
 - Thymeleaf常用语法:模板文件中表达式调用Java类的静态方法
		
在模板文件的表达式中,可以使用“${T(全限定类名).方法名(参数)}”这种格式来调用Java类的静态方法. 开发环境:IntelliJ IDEA 2019.2.2Spring Boot版本:2.1. ...
 - es6中class类的静态方法、实例方法、实例属性、(静态属性)
		
关于类有两个概念,1,类自身,:2,类的实例对象 总的来说:静态的是指向类自身,而不是指向实例对象,主要是归属不同,这是静态属性的核心. 难点1:静态方法的理解 class Foo { static ...
 - koa 基础(十八)es6中的类、静态方法、继承
		
1.app.js /** * es6中的类.静态方法.继承 */ // 定义Person类 class Person { constructor(name, age) { /*类的构造函数,实例化的时 ...
 - koa 基础(十七)原生 JS 中的类、静态方法、继承
		
1.app.js /** * 原生 JS 中的类.静态方法.继承 * es5中的类和静态方法 */ function Person(name, age) { // 构造函数里面的方法和属性 this. ...
 - Js类的静态方法与实例方法区分以及jQuery如何拓展两种方法
		
上学时C#老师讲到对象有两类方法,静态方法(Static)和实例方法(非Static),当时不理解静态是为何意,只是强记. 后来从事前端工作,一直在对类(即对象,Js中严格来说没有类的定义,虽众所周知 ...
 - PHP 类中静态方法调用非静态方法
		
静态方法调用非静态方法: 在类中静态方法中,需要实例化对象,然后再调用类中的方法 非静态方法调用静态方法: 可以self 或者 类名加::的形式调用 如下面的案例: <?php class A{ ...
 
随机推荐
- CentOS上安装elasticsearch
			
1.安装docker yum install docker 2.启动docker systemctl start docker 查看docker版本: docker -v 之后只要启动机器就会自动开启 ...
 - JavaScript - map和parseInt的坑
			
问题: var arrs = ['1', '2', '3']; var r = arrs.map(parseInt); alert(r);//1,NaN,NaN map arr.map(functio ...
 - Spark以yarn方式运行时抛出异常
			
Spark以yarn方式运行时抛出异常: cluster.YarnClientSchedulerBackend: Yarn application has already exited with st ...
 - pta 7-1 找出不是两个数组共有的元素
			
给定两个整型数组,本题要求找出不是两者共有的元素. 输入格式: 输入分别在两行中给出两个整型数组,每行先给出正整数N(≤20),随后是N个整数,其间以空格分隔. 输出格式: 在一行中按照数字给出的顺序 ...
 - 单例设计模式和main方法
			
设计模式就是在大量的实践中总结和理论之后优选的代码结构.编程风格.以及解决问题的思考方式. 说白了设计模式就是在实际编程中逐渐总结出的解决问题的套路,类似于数学公式. 类的单例设计模式:在开发过程中有 ...
 - python 中的 *args 和 **kwargs
			
在阅读Python代码时,经常会看到如下函数的定义: def fun(*args, **kwargs): 很多同学可能会对此感到困惑,这个 * args和 **kwargs是什么东西.为啥会在源码中应 ...
 - 【快学springboot】1.快速创建springboot项目
			
若图片查看异常,请前往掘金查看:https://juejin.im/post/5d00e793f265da1b614ff10b 使用spring initialize工具快速创建springboot项 ...
 - python第三方库介绍
 - Element-UI中关于table表格的样式操作
			
项目中使用到element-ui组件库,经常需要操作表格,编辑样式的过程中遇到一些问题,官网针对table给出了很多的api,自己可以自定义,基本能满足产品需求,但是没有给出具体的案例,网上的资料也比 ...
 - detectron2 配置记录
			
1. RuntimeError: Not compiled with GPU support (ROIAlign_forward at /home/oliver/PycharmProjects/det ...