Testngテストスイートを実行するgradleタスクがあります。特別なtestng xmlスイートファイルを使用するためにタスクにフラグを渡すことができるようにしたい(または、フラグが設定されていない場合はデフォルトのスイートを使用する)。
gradle test
デフォルトの標準テストスイートを実行する必要があります
gradle test -Pspecial
特別なテストスイートを実行する必要があります
私はこのようなことを試みてきました:
test {
if (special) {
test(testng_special.xml);
}
else {
test(testng_default.xml);
}
}
しかし、未定義のプロパティエラーが表示されます。これについて正しい方法は何ですか?
if (project.hasProperty('special'))
それを行う必要があります。
Testngスイートを選択するために行っていることは機能しないことに注意してください。テストタスクにはtest()
メソッドがありません。 https://discuss.gradle.org/t/how-to-run-acceptance-tests-with-testng-from-gradle/4107 を参照してください。
test {
useTestNG {
suites 'src/main/resources/testng.xml'
}
}
これは私のために働いた:
test {
if (properties.containsKey('special')) {
test(testng_special.xml);
}
else {
test(testng_default.xml);
}
}