单元测试中Mockito的简单使用

引入依赖

 <!--引入jmockit依赖-->
		<dependency>
			<groupId>org.jmockit</groupId>
			<artifactId>jmockit</artifactId>
			<version>1.38</version>
		</dependency>

  使用Mockito编写单元测试

package com.java.service.impl;

import com.java.bean.User;
import com.java.mapper.zero.LoginMapper;
import com.java.service.UserService;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.MockitoJUnitRunner;

import static org.junit.Assert.*;
@RunWith(MockitoJUnitRunner.class)
@Slf4j
public class UserServiceImplTest {

    /**
     * 创建一个实例对象
     */
    @InjectMocks
    private UserServiceImpl userService;


    /**
     * 覆盖调用数据库的过程
     */
    @Mock
    private LoginMapper loginMapper;

    @Test
    public void updateUser() {

        User user=new User();
        user.setId(11);
        user.setUserName("admin");
        user.setPassWord("123");
        user.setNickname("666");
        user.setEmail("123@qq.com");
        User userById=new User();
        userById.setId(11);
        userById.setUserName("admin");
        userById.setPassWord("123");
        userById.setEmail("123@qq.com");
        Mockito.when(loginMapper.getUserById(user.getId())).thenReturn(userById);
        User tempUser = new User();
        Mockito.when(loginMapper.updateUser(tempUser)).thenReturn(1);
        Mockito.when(loginMapper.getUserById(user.getId())).thenReturn(userById);
        userService.updateUser(user);
    }
}

  

 

 

 

 

 

 

 

posted @ 2022-06-27 22:44  不忘初心2021  阅读(71)  评论(0编辑  收藏  举报