Java单元测试 - mock静态方法

文章目录

  • [1. mock 静态方法](#1. mock 静态方法)
  • [2. 升级 maven 依赖](#2. 升级 maven 依赖)
  • [3. 示例](#3. 示例)

1. mock 静态方法

mockito 在 3.4.0 版本之后,开始支持 mock static method。

2. 升级 maven 依赖

java 复制代码
		<dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-core</artifactId>
            <version>3.12.4</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-inline</artifactId>
            <version>3.12.4</version>
            <scope>test</scope>
        </dependency>

3. 示例

类 A 有一个静态方法 a(),

java 复制代码
public class A {
    
    public static String a() {
        return "";
    }
    
}

测试用例

java 复制代码
	@Test
    public void testA(){
    	// 在try代码块中实例化一个MockedStatic
        try (MockedStatic<A> mockedStatic = Mockito.mockStatic(A.class)) {
        	// mock的静态方法的调用
            mockedStatic.when(A::a).thenReturn("xxx");
            
            // 单元测试的内容
            assertThat(.....)
        }
    }
相关推荐
不爱吃炸鸡柳8 小时前
C++ STL 核心:string 从入门到精通(面试+源码+OJ实战)
java·c++·面试
程序员榴莲8 小时前
Java(十二)抽象类
java·开发语言
超级大只老咪8 小时前
线性递推通用模板
java·开发语言·算法
coNh OOSI8 小时前
Spring Boot问题总结
java·spring boot·后端
ISkp3V8b48 小时前
基于项目工程构建SBOM(软件物料清单)的研究
java·visual studio
郝学胜-神的一滴8 小时前
「栈与缩点的艺术」二叉树前序序列化合法性判定:从脑筋急转弯到工程实现
java·开发语言·数据结构·c++·python·算法
她说..8 小时前
Java Object类与String相关高频面试题
java·开发语言·jvm·spring boot·java-ee
计算机学姐8 小时前
基于SpringBoot的宠物店管理系统
java·vue.js·spring boot·后端·spring·java-ee·intellij-idea
无心水8 小时前
22、Java开发避坑指南:日期时间、Spring核心与接口设计的最佳实践
java·开发语言·后端·python·spring·java.time·java时间处理
Rsun045519 小时前
SpringBoot + Cursor 最佳提示词工程手册
java·spring boot·后端