03.集成SpringBoot单元测试和控制台sql日志打印

1,024 阅读1分钟

03.集成SpringBoot单元测试和控制台sql日志打印

简介:项目集成Spring Boot Test单元测试+控制台数据sql

  • 需求分析->设计->开发->测试->上线

    • 单元测试: 完成最小的软件设计单元的验证工作,目标是确保模块被正确的编码
  • Spring Boot Test 是在Spring Test之上的再次封装, 使用@SpringBootTest后,Spring将加载所有被管理的bean,等同于启动了整个服务
  • 项目添加依赖
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-test</artifactId>
</dependency>

1. 编写单元测试类

image.png

package com.lzh.xd_shop;

import com.lzh.xd_shop.model.BannerDO;
import com.lzh.xd_shop.service.BannerService;
import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import java.util.List;

/**
 * @Author:kaiyang.cui
 * @Package:com.lzh.xd_shop
 * @Project:xd_shop
 * @name:MyTest
 * @Date:2023/4/1 下午5:00
 * @Filename:MyTest
 * @Description:banner单元测试类
 * @Version:1.0
 */
@Slf4j
@SpringBootTest(classes = XdShopApplication.class)
public class BannerTests {


    @Autowired
    private BannerService bannerService;

    @Test
    @DisplayName("banner-获取所有banner信息的单元测试")
    public void test() throws Exception {
        List<BannerDO> list= bannerService.listAllBanner();
        log.info("轮播图列表:{}" + list);
    }
}

2. 查看单元测试实际触发sql语句

添加如下配置

server.port=8081

#==============================数据库相关配置========================================

spring.datasource.driver-class-name =com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://39.97.253.89:3306/xd_shop?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username =root
spring.datasource.password =你的密码

#配置mybatis plus打印sql日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

3. 重启项目就可以看到idea控制台打印的sql

image.png