2

拥有一个成功构建的项目,并且将通过所有测试,运行 ptest 时除外。

build.gradle设置为在ext. 在bootRuntest任务上设置了这些环境变量。但是,pitest没有可以像前者那样设置的环境变量的属性。寻找一种方法来设置所需的信息,以便测试作为 ptest 的一部分成功运行。没有变量,测试就没有正确的上下文并失败。

using `info.solidsoft.gradle.pitest:gradle-pitest-plugin:1.3.0`

ext {

    setEnvironmentVariables = { environment ->
        environment.put('MAJOR_VERSION', cfg.MAJOR_VERSION)
        environment.put('CONTEXT_ROOT', cfg.CONTEXT_ROOT)
        environment.put('PROJECT_NAME', cfg.PROJECT_NAME)
        environment.put('PROJECT_DESCRIPTION', cfg.PROJECT_DESCRIPTION)
    }
}

bootRun {
    setEnvironmentVariables(environment)
}
4

1 回答 1

2

Pitest 是等级中的 JavaExec 类型任务。所以环境变量可以在 build.gradle 中设置为:

tasks.withType(org.gradle.api.tasks.JavaExec) {
    environment(String name, Object value)
}

就像您想将弹簧活动配置文件设置为“ci”,然后将其设置如下:

tasks.withType(org.gradle.api.tasks.JavaExec) {
    environment('spring.profiles.active', 'ci')
}
于 2019-05-16T16:32:20.093 回答