SpringBoot 多模块 多环境 项目 单元测试

环境描述

假设项目中有以下三个yml文件:

  • application.yml
  • application-dev.yml
  • application-prod.yml

假设项目各Module之间依赖关系如下:

其中,D依赖C,C依赖B,B依赖A,D对外提供最终的访问接口

现在要想采用单元测试的方式对B中的方法,采用application-dev.yml配置中的信息,进行单元测试

实现方法

第一步:

在B项目的test资源包(resources)下的、项目启动类所在同一包层次下创建任意类,为该类添加@SpringBootApplication注解,比如:

java 复制代码
@SpringBootApplication
public class BApplicationTest {
}

第二步:

创建单元测试类,在其中通过@ActiveProfiles注解指定yml文件,比如:

java 复制代码
@ActiveProfiles("dev")
@SpringBootTest
public class PermissionMapperTest {
    @Resource
    private PermissionMapper permissionMapper;

    @Test
    void selectByUserId() {
        final List<PermissionVO> permissionVOList = permissionMapper.selectByUserId(1L);
        permissionVOList.forEach(System.out::println);
    }
}
相关推荐
白仑色2 小时前
Spring Cloud Gateway 实战指南
spring boot·微服务·路由转发·限流熔断
追风少年浪子彦9 小时前
mapstruct与lombok冲突原因及解决方案
java·spring boot·spring·spring cloud
军军君019 小时前
基于Springboot+UniApp+Ai实现模拟面试小工具四:后端项目基础框架搭建下
spring boot·spring·面试·elementui·typescript·uni-app·mybatis
白仑色11 小时前
完整 Spring Boot + Vue 登录系统
vue.js·spring boot·后端
MZ_ZXD00111 小时前
flask校园学科竞赛管理系统-计算机毕业设计源码12876
java·spring boot·python·spring·django·flask·php
小郭的学习日记12 小时前
互联网大厂Java面试:从Spring Boot到微服务的场景应用
spring boot·微服务·java面试·技术栈·电商平台
超级小忍12 小时前
在 Spring Boot 中使用 MyBatis 的 XML 文件编写 SQL 语句详解
xml·spring boot·mybatis
Q_Q196328847513 小时前
python的平安驾校管理系统
开发语言·spring boot·python·django·flask·node.js·php
超级小忍14 小时前
在 Spring Boot 中如何使用 Assert 进行断言校验
spring boot·后端