使用Spring Profiles运行Gradle任务(集成测试)

Run gradle task with Spring Profiles (Integration tests)(使用Spring Profiles运行Gradle任务(集成测试))

本文介绍了使用Spring Profiles运行Gradle任务(集成测试)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

需要使用弹簧配置文件通过Gradle运行测试。

gradle clean build

我已添加任务:

task beforeTest() {
    doLast {
      System.setProperty("spring.profiles.active", "DEV")
    }
}

test.dependsOn beforeTest

我的测试定义是:

@RunWith(SpringRunner.class)
@SpringBootTest
@ActiveProfiles("TestProfile")
public class SomeTest {

但此结构不适用于我。

Gradle运行测试。

推荐答案

我认为您希望在运行时/测试JVM中设置系统属性,但您在构建时JVM(即Gradle守护进程)中设置的系统属性不正确。

参见Test.systemProperty(String, Object)

例如:

test {
    systemProperty 'spring.profiles.active', 'DEV'
}

..。还有关于你尝试的另一张纸条。请注意,任务具有doFirstdoLast方法,因此您不需要为您正在尝试的内容单独执行任务。

这篇关于使用Spring Profiles运行Gradle任务(集成测试)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:使用Spring Profiles运行Gradle任务(集成测试)

基础教程推荐