gradle を使用して、Jenkins から testNG テストを実行しています。gradle docsを見てください。
構成 xml ファイルを使用して testNG テストを実行します。testNG docsを見てください。
カバーしなければならないことがかなりあるので、これらのソースを読むことをお勧めしますが、構成の 1 つから関連する部分をいくつか提供します。
私のbuild.gradleの関連部分
tasks.withType(Test) {
useTestNG {
useDefaultListeners = true
}
options {
outputDirectory = file('test-report')
listeners << 'org.uncommons.reportng.JUnitXMLReporter'
}
testLogging.showStandardStreams = true
systemProperties System.getProperties()
systemProperty "org.uncommons.reportng.escape-output", "false"
systemProperty "org.uncommons.reportng.title", "Test Report"
ignoreFailures = true
}
task Smoke_Test(type: Test) {
description "SmokeTest"
options.suites("resources/testng-smoketest.xml")
ignoreFailures = false
}
上記の「testng-smoketest.xml」で参照されている私のtestNG xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Smoke Tests" >
<test name="BootCheck" parallel="false" thread-count="1">
<classes>
<class name="com.x.automation.y.tests.smoke.BootCheck" />
</classes>
</test>
</suite>
Jenkins からは、'execute shell' ビルド ステップで gradle タスクを実行するので、便宜上 gradle ラッパーを使用します。
./gradlew clean Smoke_Test
正しいディレクトリにいることを確認してください。'Smoke_Test' は build.gradle で指定された名前です。
結果を保存するには、testNG Jenkins プラグインを使用できます。
また、HTML Publisher プラグインを使用して Jenkins で表示および保存できるテスト レポートの適切な書式設定のために、reportngを使用することもお勧めします。
最初にこれをローカル マシンの CLI から実行してみてください。Jenkins から実行しているときにデバッグしようとすると気が狂ってしまいます。