探索单元测试系列(3) Mockito的简单使用

定义

      mock是在测试过程中,对于一些不容易构造/获取的对象,创建一个mock对象来模拟对象的行为。

意义

    传统的单元测试需要保证程序的每一个部分都是就绪的,完整的和可用的。直到程序的各个部分被完全开发完才能进入测试阶段。mock提供了隔离测试的概念,假设A依赖B,只需要将B进行mock,返回期望的结果,就可以让A进行一次完整的单元测试。

三个步骤

   1. mock一个假对象;

   2. 定义假对象的行为;

   3. 调用假对象的方法,执行定义好的假行为

   4. 验证结果是否正确

maven引入:

        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-all</artifactId>
            <version>1.10.19</version>
            <scope>test</scope>
        </dependency>

实践 

package com.example.demo.mock;

import org.junit.Test;
import org.mockito.Mockito;

import java.util.ArrayList;
import java.util.List;

/**
 * @ClassName MockTest
 * @Author zhaoguang
 * @Date 2019/12/14
 * @Version 1.0
 */
public class MockTest {

    @Test
    public void test(){
        List list = Mockito.mock(ArrayList.class); //mock一个假对象
        Mockito.when(list.toString()).thenReturn(new ArrayList<String>().toString()); //定义行为
        Assert。assertTrue("[]".equals(list.toString())); //执行并验证结果
    }
}

详细使用内容参考:mockit基础使用

发布了119 篇原创文章 · 获赞 23 · 访问量 2万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章