Spring Boot整合Junit

系列文章目录

Spring Boot[概述、功能、快速入门]_心态还需努力呀的博客-CSDN博客

Spring Boot读取配置文件内容的三种方式_心态还需努力呀的博客-CSDN博客

该系列文章持续更新中~


目录

系列文章目录

前言

一、搭建SpringBoot工程

二、引入starter-test起步依赖

三、编写测试类

四、添加测试相关注解

4.1 @RunWith(SpringRunner.class)

4.2 @SpringBootTest(classes=启动类.class)

五、编写测试方法

六、效果图

总结


前言

SpringBoot整合Junit为了就是用来测试方法的执行结果。Junit是一个Java语言的测试框架。Junit 测试可以更快地编写代码,提高质量。


一、搭建SpringBoot工程

创建SpringBoot的方法我以前写过,可查看本文章:Spring Boot[概述、功能、快速入门]_心态还需努力呀的博客-CSDN博客

 还有一种快速创建SpringBoot项目的方法,在new project的时候选择Spring Initializr,然后选择Maven,Name啥的可以自己编写项目名称等。具体操作页面如下图所示:

Spring Boot整合Junit_第1张图片

二、引入starter-test起步依赖

在pom.xml文件中引入starter-test起步依赖坐标,具体代码如下图:


            org.springframework.boot
            spring-boot-starter-test
            test
        

三、编写测试类

在编写测试类前我们需要创建一个service包,在service包下编写UserService类,以便于模拟以后测试类中测试service层的方法。UserService类下的代码如下,就是编写一个测试方法。注意:service层要加入@Service的注解。

package com.imust.service;

import org.springframework.stereotype.Service;

@Service
public class UserService {
    public void test(){
        System.out.println("test junit");
    }
}

四、添加测试相关注解

4.1 @RunWith(SpringRunner.class)

@RunWith(SpringRunner.class)注解是一个测试启动器,可以加载Springboot测试注解。

4.2 @SpringBootTest(classes=启动类.class)

@SpringBootTest(classes=启动类.class)是SpringBoot项目的测试的注解,参数就是将引导类。用来使测试类在运行时能够找到main主方法。就是如下图红色框内所示的参数。

Spring Boot整合Junit_第2张图片

 注意:如果test/java包下的文件名称和路径和main/java包下的文件名称和路径相同,则可以不配置参数,会自动找到启动类的位置。

但如果不一致的话必须配置参数。否则将会报错提示找不到启动类。

五、编写测试方法

在test/java包下编写测试类UserServiceTest,这里的路径就和main/java的不一样,所以需要配置参数。然后注入UserService类,调用UserService类下的test方法测试是否可以运行。具体代码如下:

import com.imust.MyApplication;
import com.imust.service.UserService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

@SpringBootTest(classes = MyApplication.class)
@RunWith(SpringRunner.class)
public class UserServiceTest {
    @Autowired
    private UserService userService;
    @Test
     public void testJunit(){
         userService.test();
     }
}

六、效果图

 在控制台中可以看到打印出来了UserService类下的test方法编写的输出语句,说明整合成功。

Spring Boot整合Junit_第3张图片


总结

在我们开发自己的项目时都需要先去进行测试service层的代码是否逻辑和运行结果是否正确,这样在整合后将结果传给前端才能在页面中看到正确的内容。所以说测试是非常必要的。

你可能感兴趣的:(SpringBoot专栏,后端知识点,junit,spring,boot,后端,java-ee,maven)