You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将默认使用Testcontainers的jHipster 7.9恢复至旧测试机制?

切换jHipster 7.9集成测试至传统运行机制

可以通过以下步骤切换回jHipster此前使用的集成测试运行机制(基于嵌入式数据库或直接连接测试数据库,替代Testcontainers):

1. 移除Testcontainers相关依赖与构建配置

Maven 项目

编辑项目根目录下的pom.xml:

  • 删除或注释所有Testcontainers相关依赖:
<!-- 删除Testcontainers核心依赖 -->
<dependency>
    <groupId>org.testcontainers</groupId>
    <artifactId>junit-jupiter</artifactId>
    <scope>test</scope>
</dependency>
<!-- 删除对应数据库的Testcontainers依赖,例如PostgreSQL -->
<dependency>
    <groupId>org.testcontainers</groupId>
    <artifactId>postgresql</artifactId>
    <scope>test</scope>
</dependency>
  • 若存在Testcontainers Maven插件,同样删除或注释:
<plugin>
    <groupId>org.testcontainers</groupId>
    <artifactId>testcontainers-maven-plugin</artifactId>
    <version>...</version>
</plugin>

Gradle 项目

编辑项目根目录下的build.gradle:

  • 删除Testcontainers相关依赖声明:
// 删除Testcontainers核心依赖
testImplementation 'org.testcontainers:junit-jupiter'
// 删除对应数据库的Testcontainers依赖
testImplementation 'org.testcontainers:postgresql'
  • 移除任何与Testcontainers相关的插件配置。

2. 调整测试类与配置文件

  • 移除所有测试类上的@Testcontainers注解,删除类中容器实例的定义(例如@Container注解的数据库容器对象)。
  • 修改测试环境配置文件(src/test/resources/application.yml或application.properties),切换为嵌入式数据库(如H2)或测试环境数据库:
    以H2嵌入式数据库为例,application.yml配置如下:
spring:
  datasource:
    url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1
    driverClassName: org.h2.Driver
    username: sa
    password: ""
  jpa:
    database-platform: org.hibernate.dialect.H2Dialect
    hibernate:
      ddl-auto: create-drop

3. 更新Bitbucket Pipeline配置

移除Pipeline中为Testcontainers配置的Docker服务(因为Testcontainers依赖Docker环境运行),修改bitbucket-pipelines.yml:

# 移除原有的Docker服务配置
# services:
#   - docker

若使用外部测试数据库,需确保Pipeline环境能访问该数据库,并在配置文件中正确配置连接信息。

内容的提问来源于stack exchange,提问作者David J

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 11:18:28