在Gradle中,如何在使用useTestNg时从testng上下文xml中指定TestName

在Gradle中,如何在使用useTestNg时从testng上下文xml中指定TestName,gradle,testng,Gradle,Testng,我正在build gradle中使用现有的testng上下文xml test { useTestNG() { suites 'src/test/resources/testng-context.xml' setTestName 'smoke1' } 在我的testng上下文xml中,我有一组不同的测试,如smoke1、smoke2: <test name="smoke1"> <groups> <run>

我正在build gradle中使用现有的testng上下文xml

test {
useTestNG() {       
    suites 'src/test/resources/testng-context.xml'
    setTestName 'smoke1'
}
在我的testng上下文xml中,我有一组不同的测试,如smoke1、smoke2:

<test name="smoke1">
    <groups>
        <run>
            <include name="smoke" />
        </run>
    </groups>
    <packages>
        <package name="com.servicestesting.tests" />
    </packages>
</test>
<test name="smoke2">
    <groups>
        <run>
            <include name="smoke" />
        </run>
    </groups>
    <packages>
        <package name="com.uitesting.tests" />
    </packages>
</test>


如何在我的gradle测试任务中提供此自定义测试?

如果我理解正确,您希望根据类似smoke1或smoke2的名称运行测试

可能您应该在build.Gradle文件中创建一个新的Gradle任务命令,如下所示:

    task smokeTests(type: Test) { 
   useTestNG() {
       useDefaultListeners = true
       suites 'src/test/resources/testng-context.xml'
       includeGroups 'smoke1' 
   }
}
然后使用gradle smokeTests命令运行测试。 这里有一篇更详细的文章。

如果我理解正确,您希望根据类似smoke1或smoke2的名称运行测试

可能您应该在build.Gradle文件中创建一个新的Gradle任务命令,如下所示:

    task smokeTests(type: Test) { 
   useTestNG() {
       useDefaultListeners = true
       suites 'src/test/resources/testng-context.xml'
       includeGroups 'smoke1' 
   }
}
然后使用gradle smokeTests命令运行测试。 这里有一篇更详细的文章。