0
点赞
收藏
分享

微信扫一扫

CentOS虚拟机 NAT模式连网

自信的姐姐 2023-08-09 阅读 77

目录

1.什么是单元测试?

2.单元测试的优点

3.Spring Boot 单元测试使用

3.1 生成单元测试的类

3.2 添加 Spring Boot 框架测试注解:@SpringBootTest

3.3 添加单元测试业务逻辑

3.4 注解 @Transactional 

4. 断言


1.什么是单元测试?

2.单元测试的优点

3.Spring Boot 单元测试使用

Spring Boot 项目创建时会默认单元测试框架 spring-boot-test,而这个单元测试框架主要是依靠另⼀ 个著名的测试框架 JUnit 实现的,打开 pom.xml 就可以看到,以下信息是 Spring Boot 项目创建是自动添加的:

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>

3.1 生成单元测试的类

 


class UserMapperTest {
void getUserById() {
}
}

3.2 添加 Spring Boot 框架测试注解:@SpringBootTest

package com.example.ssmdemo1.mapper;

import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;

import static org.junit.jupiter.api.Assertions.*;

@SpringBootTest//表明当前单元测试是运行在Spring Boot环境中的
class UserMapperTest {

@Test
void getUserById() {
}
}

3.3 添加单元测试业务逻辑

package com.example.ssmdemo1.mapper;

import com.example.ssmdemo1.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.*;

@SpringBootTest//1、表明当前单元测试是运行在Spring Boot环境中的
class UserMapperTest {
//2、注入测试对象
@Autowired
private UserMapper userMapper;

@Test
void getUserById() {
//3、添加单元测试的业务代码
Userinfo userinfo=userMapper.getUserById(1);
System.out.println(userinfo);
}
}

3.4 注解 @Transactional 

@SpringBootTest// 1.表明当前单元测试是运行在Spring Boot环境中的
@Transactional // 开启一个事务,执行完恢复数据
class UserMapperTest {

@Autowired// 2.注入测试对象:属性注入
private UserMapper userMapper;

@Test
// @Transactional
void getUserById() {
// 3.添加单元测试的业务代码
Userinfo userinfo = userMapper.getUserById(1);
System.out.println(userinfo);
Assertions.assertEquals("admin",userinfo.getUsername());
}
}

4. 断言

assertEquals判断两个对象或两个原始类型是否相等
assertNotEquals判断两个对象或两个原始类型是否不相等
assertSame判断两个对象引用是否指向同一个对象
assertNotSame判断两个对象引用是否指向不同的对象
assertTrue判断给定的布尔值是否为 true
assertFalse判断给定的布尔值是否为 false
assertNull判断给定的对象引用是否为 null
assertNotNull判断给定的对象引用是否不为 null
举报

相关推荐

0 条评论