【发布时间】:2019-11-01 06:33:36
【问题描述】:
我想在执行集成测试时切换我的测试数据库配置。目前,我使用配置文件“它”在开发模式下使用数据库。当我在 Jenkins CI 上执行集成测试时,我想使用另一个配置文件,例如“jenkins-it”。我不想使用内存数据库(我使用 Postgresql)。 我对 Jenkins 的测试是由 Gradle 使用以下命令启动的:gradlew test
这是我如何注释我的集成测试类:
@RunWith(SpringRunner::class)
@DataJpaTest
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE)
@ActiveProfiles("it")
public MyClassIT {
@Test
...
}
它在开发中工作,因为它使用我的“application-it.yaml”和我定义的开发数据源。这是“application-it.yaml”的内容:
spring:
datasource:
url: "jdbc:postgresql://localhost:5432/mfttest?currentSchema=audit"
username: "testuser"
password: "testuser"
jpa:
hibernate:
ddl-auto: create-drop
show-sql: true
properties:
hibernate:
format_sql: true
liquibase:
enabled: false
在 Jenkins CI 上,如何切换以将我的“application-jenkins-it.yaml”与 Jenkins 数据源一起使用?
【问题讨论】:
标签: spring spring-boot gradle