Springboot使用單元測試(JUnit Test)


步驟 1 : 單元測試

有時候呢,springboot 里要做單元測試,而不是直接跑起來。 比如 jpa 的查詢數據,想跑個測試,看看數據庫里的數據,那么這里就會講如何做了

步驟 2 : 可運行項目

首先下載一個簡單的可運行項目作為演示:網盤鏈接https://www.90pan.com/b1869096

下載后解壓,比如解壓到 E:\project\springboot 目錄下

步驟 3 : pom.xml

  1. 修改 junit 版本為 4.12

  2. 增加 spring-boot-starter-test

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

  <groupId>com.ryan</groupId>
  <artifactId>springboot</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>springboot</name>
  <description>springboot</description>
  <packaging>war</packaging>
  
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.9.RELEASE</version>
    </parent>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
        </dependency>
        
        <!-- junit -->
	<dependency>
		<groupId>junit</groupId>
		<artifactId>junit</artifactId>
		<version>4.12</version>
		<scope>test</scope>
	</dependency>
        
        <!-- servlet依賴. -->
        <dependency>
              <groupId>javax.servlet</groupId>
              <artifactId>javax.servlet-api</artifactId>
        </dependency>
              <dependency>
                     <groupId>javax.servlet</groupId>
                     <artifactId>jstl</artifactId>
              </dependency>
        <!-- tomcat的支持.-->
        <dependency>
               <groupId>org.apache.tomcat.embed</groupId>
               <artifactId>tomcat-embed-jasper</artifactId>
        </dependency>	    
		<dependency>
		    <groupId>org.springframework.boot</groupId>
		    <artifactId>spring-boot-devtools</artifactId>
		    <optional>true</optional> <!-- 這個需要為 true 熱部署才有效 -->
		</dependency>
        
                <!-- mysql-->
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.21</version>
		</dependency>

		<!-- jpa-->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-jpa</artifactId>
		</dependency>        
		
		<!-- springboot test -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
    </dependencies>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>                                                                      

步驟 4 : 添加測試類

  1. 需要加上2個注解:
  • @RunWith(SpringRunner.class)
  • @SpringBootTest(classes = Application.class)
  1. 自動裝配 CategoryDAO dao; 以便於使用

  2. test 方法加上 @Test 注解,然后就可以使用dao來工作了

  3. 運行的時候選擇 JUnit Test 方式

  4. 該類需放在 src/test/java

測試類

package com.ryan.springboot.test;

import java.util.List;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

import com.ryan.springboot.Application;
import com.ryan.springboot.dao.CategoryDAO;
import com.ryan.springboot.pojo.Category;

@RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class)
public class TestJPA {

	@Autowired CategoryDAO dao;
	
	@Test
	public void test() {
		List<Category> cs=  dao.findAll();
		for (Category c : cs) {
			System.out.println("c.getName():"+ c.getName());
		}
	}
}

步驟 5 : 測試

運行 TestJPA 類就可以看到如圖所示的效果了

更多關於 Springboot 單元測試 詳細內容,點擊學習: http://t.cn/A62Y5244


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM