什么是单元测试?
对软件中最小可测试单元进行检查和验证的过程叫做单元测试
单元测试有哪些好处?
足够简单、方便、快速的测试一个功能模块(通常是一个方法)
在打包之前发现一些问题,打包前需要验证所有的单元测试是否通过
在测试的时候,可以不污染数据库,也就是不对数据库进行任何改变@Transactional
单元测试的使用
更多使用技巧: http://t.csdn.cn/kX9BV
添加依赖
SpringBoot已经内置了这个框架,我们不需要在额外添加。
注意虽然不是JUnit框架,但这个是内置了JUnit的,从外部包(External Libraries)中就可以看到。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
①创建测试类
![](https://i-blog.csdnimg.cn/blog_migrate/f9720575477c634b768a97faaf05d182.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5728d5ec7cee2f0a9838162a454a9519.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d820957c7175998f02a6453b74667d13.png)
②添加单元测试的代码
package com.example.demo.mapper;
import com.example.demo.entity.Userinfo;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import static org.junit.jupiter.api.Assertions.*;
// 1.添加这个SpringBoot,表名这个代码是在SpringBoot环境下的
@SpringBootTest
class UserinfoMapperTest {
// 2.注入测试对象
@Autowired
UserinfoMapper userinfoMapper;
// 3.写测试的业务代码
@Test
void getUserInfoById() {
Userinfo userinfo = userinfoMapper.getUserInfoById(1);
System.out.println(userinfo);
}
}
③运行单元测试
直接点击运行按钮即可
当运行通过就会出现绿色对号
![](https://i-blog.csdnimg.cn/blog_migrate/c0054ce8006ba54e64702c5796c386c8.png)
更多使用技巧:http://t.csdn.cn/kX9BV