我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Java单元测试Mockito怎么用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Java单元测试Mockito怎么用

这篇文章将为大家详细讲解有关Java单元测试Mockito怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

Mockito简介

    调用mock对象的方法时,不会执行真实的方法,而是返回类型的默认值,如object返回null, int返回0等,否则通过指定when(方法).thenReturn(value)来指定方法的返回值。同时mock对象可以进行跟踪,使用verify方法看是否已经被调用过。而spy对象,默认会执行真实方法,返回值可以通过when.thenReturn进行覆盖。可见mock只要避开了执行一些方法,直接返回指定的值,方便做其他测试。

Service测试用例

需要的依赖

  <dependency>            <groupId>junit</groupId>            <artifactId>junit</artifactId>            <version>4.12</version>            <scope>test</scope>        </dependency>        <dependency>            <groupId>org.mockito</groupId>            <artifactId>mockito-core</artifactId>            <version>2.23.4</version>            <scope>test</scope>        </dependency>        <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-test</artifactId>            <version>2.1.13.RELEASE</version>        </dependency>

代码示例

@RunWith(MockitoJUnitRunner.class)@SpringBootTest()public class StudentServiceTest {    @InjectMocks    StudentService studentService = new StudentServiceImpl();    @Mock    StudentDAO     studentDAO;    @Before    public void before(){        Mockito.doReturn(new StudentDO("张三", 18)).when(studentDAO).read(Mockito.anyString());    }    @Test    public void testRead(){        StudentDO read = studentService.read("");        Assert.assertNotNull(read);    }}

Controller测试用例

需要的依赖

<dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-test</artifactId>            <version>5.1.14.RELEASE</version>        </dependency>        <dependency>            <groupId>com.jayway.jsonpath</groupId>            <artifactId>json-path</artifactId>            <version>2.4.0</version>        </dependency>

代码示例

@RunWith(MockitoJUnitRunner.class)@SpringBootTest()public class StudentControllerTest {    @Resource    MockMvc mockMvc;    @InjectMocks    StudentController studentController;    @Mock    StudentService    studentService;    @Before    public void before() {        mockMvc = MockMvcBuilders.standaloneSetup(studentController).build();        Mockito.doReturn(new StudentDO("张三", 18)).when(studentService).read(Mockito.anyString());    }    @Test    public void testRead() throws Exception {        MockHttpServletRequestBuilder request = MockMvcRequestBuilders.get("/student/read/1");        mockMvc.perform(request)                .andDo(print())                .andExpect(status().isOk())                .andExpect(jsonPath("$.name").value("张三"));    }}

关于“Java单元测试Mockito怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Java单元测试Mockito怎么用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Java单元测试Mockito怎么用

这篇文章将为大家详细讲解有关Java单元测试Mockito怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Mockito简介 调用mock对象的方法时,不会执行真实的方法,而是返回类型的默认值,
2023-06-20

怎么在SpringBoot中使用Mockito单元测试

这期内容当中小编将会给大家带来有关怎么在SpringBoot中使用Mockito单元测试,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Mock 测试Mock 测试就是在测试过程中,创建一个假的对象,避免你
2023-06-15

SpringBoot单元测试框架Mockito介绍及使用

与集成测试将系统作为一个整体测试不同,单元测试更应该专注于某个类。所以当被测试类与外部类有依赖的时候,尤其是与数据库相关的这种费时且有状态的类,很难做单元测试。但好在可以通过“Mockito”这种仿真框架来模拟这些比较费时的类,从而专注于测试某个类内部的逻辑
2023-01-04

Java中怎么实现单元测试与集成测试

Java中怎么实现单元测试与集成测试,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Maven测试代码结构的组织我们知道在Maven工程结构中“src/test”目录是专门用
2023-06-16

Java基础单元测试

本篇博文目录: 1.单元测试(1) 测试Java方法(原生) 2. JUnit 5(1) JUnit 5简单使用的例子(2) JUnit5常用注解(3) JUnit5常用注解的使用(4).JUnit5内置断言
2023-08-17

golang单元测试怎么应用

Go语言中的单元测试是通过创建和运行Go源代码文件中的特殊函数来实现的。以下是如何使用Go的单元测试的步骤:1. 在源代码文件的同一目录中创建一个新的文件,文件名以_test.go结尾。例如,如果要测试名为example.go的文件,可以创
2023-10-21

Java怎么自动生成mock单元测试

在Java中,我们可以使用Mockito等库来自动生成mock单元测试。以下是一个示例:首先,我们需要在项目的构建文件中添加Mockito库的依赖项。例如,在Maven项目中,可以将以下依赖项添加到pom.xml文件中:org.mocki
2023-10-22

java测试单元JUnit最简单的使用

只是写一个小入门,简单输出文本。首先,创建一个MessageUtil类,用来测试 (推荐学习:java课程)package com.test.jiao;public class MessageUtil { private String m
java测试单元JUnit最简单的使用
2018-11-15

android单元测试怎么实现

Android单元测试可以通过使用JUnit框架和Android Testing Support Library来实现。以下是实现Android单元测试的步骤:1. 配置Gradle:在项目的`build.gradle`文件中添加以下依赖项
2023-08-29

Hibernate单元测试怎么实现

这篇文章主要介绍“Hibernate单元测试怎么实现”,在日常操作中,相信很多人在Hibernate单元测试怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Hibernate单元测试怎么实现”的疑惑有所
2023-06-17

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录