温馨提示:本文翻译自stackoverflow.com,查看原文请点击:properties - Gradle task check if property is defined
properties task gradle testng

properties - Gradle任务检查是否定义了属性

发布于 2020-03-27 10:35:39

我有一个gradle任务,它执行一个testng测试套件。我希望能够将标志传递给任务,以便使用特殊的testng xml套件文件(如果未设置标志,则仅使用默认套件)。

gradle test

应该运行默认的标准测试套件

gradle test -Pspecial

应该运行特殊的测试套件

我一直在尝试这样的事情:

test {
    if (special) {
        test(testng_special.xml);
    }
    else {
        test(testng_default.xml);
    }
}

但是我收到一个未定义的属性错误。正确的解决方法是什么?

查看更多

查看更多

提问者
user2506293
被浏览
82
JB Nizet 2015-07-09 03:51
if (project.hasProperty('special'))

应该这样做。

请注意,您选择testng套件所要执行的操作将不起作用,AFAIK:测试任务没有任何test()方法。有关工作示例,请参阅https://discuss.gradle.org/t/how-to-run-acceptance-tests-with-testng-from-gradle/4107

test {
    useTestNG {
        suites 'src/main/resources/testng.xml'
    }
}