我是gradle的新手,我被困于使用gradle运行我的测试套件。以下是我的文件:
我收到“生成成功消息”,但我的脚本未运行。我已经在testNG.xml中配置了所有要运行的测试用例,但是gradle并未选择xml文件和其中定义的测试。
Build.gradle file:
task createTest(type: Test) {
test {
useTestNG() {
suites 'src/test/resources/testNG.xml'
useDefaultListeners = true
}
}
}
and my testNG file is:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="liveScoreTesting" parallel="tests" thread-count="6">
<listeners>
<listener class-name="org.uncommons.reportng.HTMLReporter" />
<listener class-name="org.uncommons.reportng.JUnitXMLReporter" />
<listener class-name="support.ReportingTools" />
</listeners>
<parameter name="browser" value="FF" />
<parameter name="timeout" value="45" />
<parameter name="driverLocation"
value="src/test/resources/ChromeDriverServerx32/chromedriver.exe"></parameter>
<parameter name="excelSheetLocation"
value="/src/test/resources/DataSheets/LiveScoreValidationTest.xls" />
<parameter name="sheetName" value="dataProvider" />
<parameter name="suppressScreenshot" value="true" />
<test name="LiveScoreTest" enabled="true" verbose="5">
<parameter name="excelSheetLocation"
value="/src/test/resources/DataSheets/LiveScoreValidationTest.xls" />
<parameter name="sheetName" value="dataProvider" />
<classes>
<class name="Scripts.LiveScoreValidationTest" />
</classes>
</test>
<test name="HeadlessBrowserTesting" enabled="false" verbose="5">
<parameter name="browser" value="PHANTOM" />
<parameter name="driverLocation"
value="src/test/resources/PhantomJSServer/bin/phantomjs.exe"></parameter>
<classes>
<class name="Scripts.HeadlessBrowserTesting1" />
</classes>
</test>
</suite>
Everytime I run the task it says Build Successful but does not run my test cases.
Note : I dont want to use directly this solution-
task runTests(type: JavaExec, dependsOn: '`enter code here`classes') {
main = 'org.testng.TestNG'
classpath = files("./src/test/resources",
project.sourceSets.main.compileClasspath,
project.sourceSets.test.compileClasspath,
project.sourceSets.main.runtimeClasspath,
project.sourceSets.test.runtimeClasspath)
args = ["-parallel", "methods", "-threadcount", "1", "-d", "./build/test-output", "./src/test/resources/TestNGFiles/testNG.xml"]
}
enter code here
}
as using this I am not able to disable the default test listener. Appreciate your quick response.
最佳答案
我也遇到了这个问题。我有一个现有的gradle配置,该配置使用TestNG进行测试,因此我决定希望它使用XML配置,而不是在src / test下运行每个类中的所有测试(这是默认行为)。
无法弄清楚为什么它不起作用,然后它打击了我。
Gradle进行增量构建。 什么也没发生,因为所有测试结果(就Gradle而言)都是最新的。
首先进行“分级清洁”,然后进行测试。那行得通。 (不敢相信我之前没有弄清楚,大声笑)
关于gradle - Gradle TestNG套件文件未运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37023337/