1. 程式人生 > >springboot 對dao層介面進行單元測試-springboot(4)

springboot 對dao層介面進行單元測試-springboot(4)

前言

接著之前的springboot專案,來寫springboot對dao層介面測試。

正文

之前我的springboot專案在初始化就自動引入了測試依賴,所以無需再次引入其他。

新增函式

mybatis自動生成了6個基本函式,但是開發中這些函式遠遠不夠用,(新增函式寫法)這裡我重新增加一個函式selectAll()得到所有的資料庫記錄。

  1. 在Mapper中新增函式

UserMapper.java中新增ArrayList<User> selectAll()

ArrayList<User> selectAll();
  1. xml對映檔案中,編寫函式體.

UserMapper.xml中新增

  <select id="selectAll" resultMap="BaseResultMap">
    SELECT * FROM user
  </select>
  1. 更新services
    UserService.java中新增
@Override
    public ArrayList<User> selectAll() {
        return userMapper.selectAll();
    }

測試函式

在初始化已經自動生成了測試包和測試類,最簡單的是在測試類直接新增程式碼。

  1. 編輯測試程式碼

HellospringApplicationTests.java程式碼如下

package com.nick.hello;

import com.nick.hello.dao.UserMapper;
import com.nick.hello.entity.User;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.Iterator;
import java.util.List;

@RunWith(SpringRunner.class)
@SpringBootTest
@EnableAutoConfiguration
public class HellospringApplicationTests {

	@Autowired
    private UserMapper userMapper;

	@Test
	public void selectAllTest() {
        List<User> list = userMapper.selectAll();
        System.out.println(list);
        Iterator iterator = list.iterator();
        int i = 1;
        while (iterator.hasNext()) {
            User user = (User)iterator.next();
            System.out.println(i + " : " + user.getId());
            i++;
        }
    }


}


很簡單,自動注入Mapper物件,然後操作物件的方法即可
2. 執行測試類

點選左側執行標誌

點選左側的函式名可以快速找到結果