【Spring整合Junit】Spring整合Junit介绍

本文内容基于【Spring整合MyBatis】Spring整合MyBatis的具体方法进行测试

文章目录

  • [1. 导入相关坐标](#1. 导入相关坐标)
  • [2. 使用Junit测试所需注解](#2. 使用Junit测试所需注解)
  • [3. 在测试类中写相关内容](#3. 在测试类中写相关内容)

1. 导入相关坐标

在pom.xml中导入相关坐标:

xml 复制代码
<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.13.2</version>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-test</artifactId>
    <version>5.3.25</version>
</dependency>

2. 使用Junit测试所需注解

一般测试Service类,我们在test包下建立测试类,并使用@Runwith来指定运行期,通过@ContextConfiguration来指定配置类

java 复制代码
package com.example.project2.service;

import com.example.project2.config.SpringConfig;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = SpringConfig.class)
public class AccountServiceTest {
}

关于@Runwith找了两篇博客:

  1. Junit的基础讲解一
  2. Junit的基础讲解二

3. 在测试类中写相关内容

使用依赖注入在这里注入accountService,在测试方法中上需要加上@Test的注解

java 复制代码
package com.example.project2.service;

import com.example.project2.config.SpringConfig;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = SpringConfig.class)
public class AccountServiceTest {

    @Autowired
    private AccountService accountService;

    @Test
    public void testFIndById(){
        System.out.println(accountService.findById(1));
    }
}

运行结果:

findById()中的id改成2,运行结果:

相关推荐
Mahir082 小时前
Spring 循环依赖深度解密:从问题本质到三级缓存源码级解析
java·后端·spring·缓存·面试·循环依赖·三级缓存
YOU OU6 小时前
Spring IoC&DI
java·数据库·spring
小江的记录本8 小时前
【Java基础】Java 8-21新特性:JDK21 LTS:虚拟线程、模式匹配switch、结构化并发、序列集合(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven
云烟成雨TD9 小时前
Spring AI Alibaba 1.x 系列【58】Spring AI Alibaba Builtin Nodes 模块介绍
java·人工智能·spring
小江的记录本9 小时前
【Java基础】反射与注解:核心原理、自定义注解、注解解析方式(附《思维导图》+《面试高频考点清单》)
java·数据结构·python·mysql·spring·面试·maven
smileNicky10 小时前
Spring框架懒加载怎么实现?
python·spring·rpc
yychen_java11 小时前
IDEA × Qoder:告别“手写Spring”,进入AI协作开发新时代
人工智能·spring·intellij-idea
未若君雅裁11 小时前
Spring Bean 作用域、线程安全与生命周期
java·安全·spring
Ting-yu13 小时前
Spring AI Alibaba零基础速成(5) ---- Memory(记忆)
java·人工智能·后端·spring
月落归舟13 小时前
一文掌握Spring AOP:从入门到底层原理
java·后端·spring