Run gradle task with Spring Profiles (Integration tests)(使用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'
}
..。还有关于你尝试的另一张纸条。请注意,任务具有doFirst
和doLast
方法,因此您不需要为您正在尝试的内容单独执行任务。
这篇关于使用Spring Profiles运行Gradle任务(集成测试)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!