使用'gradle test'测试Grails 3 app使用错误的环境配置

时间:2015-06-03 16:05:09

标签: grails gradle

我有一个Grails 3应用程序,我正在尝试为其进行功能测试配置嵌入式数据存储区。我有专门针对'test'环境的数据存储区的配置。

当我运行'grails test-app'时,应用会连接到正确的数据存储区,并且我的功能测试通过了。

当我尝试使用'gradle test'测试应用程序时,它会尝试连接到开发环境的数据存储区并失败。

我已尝试通过将此添加到build.gradle来指定Grails环境以用于gradle测试任务:

test {
    String testEnvArg = '-Dgrails.env=test'

    if (jvmArgs) {
        jvmArgs.add(testEnvArg)
    } else {
        jvmArgs = [testEnvArg]
    }
}

但是这种行为似乎没有改变。

如何让gradle'test'任务使用正确的Grails环境配置?

2 个答案:

答案 0 :(得分:3)

您必须指定环境:

gradle -PgrailsEnv=test test

答案 1 :(得分:1)

使用生产环境和gradle包装器启动运行以下工作:

./ gradlew -Dgrails.env = production bootRun

请求测试环境:

./ gradlew -Dgrails.env = test bootRun