俺の src/test/
フォルダーには、単体テストと機能テストの両方が含まれます。機能テストのクラスパスにはWord cucumber
がありますが、単体テストにはありません。それでは、単体テストのみを実行するにはどうすればよいですか?
どうもありがとうございました。
P.S。:「選択」ロジックを使用してテストを選択するのは簡単だと知っています。たとえば、私の場合にのみ機能テストを実行するには、単にこれを使用できます./gradlew test -Dtest.single=cucumber/**/
ただし、簡単な方法でテストを除外する方法はわかりません。
ところで、私はgradle 1.11を使用しています。
ドキュメント タスクの説明、例とすべて:
apply plugin: 'Java' // adds 'test' task
test {
// ...
// explicitly include or exclude tests
include 'org/foo/**'
exclude 'org/boo/**'
// ...
}
クレジット:この回答は、JB Nizetの回答に触発されました。私の質問により直接的であるため、投稿されています。
単体テストのみを実行するには、次のような新しいタスクを作成します。
task unitTest( type: Test ) {
exclude '**/cucumber/**'
}
このように:
すべてのテストを実行します:./gradlew test
すべての単体テストを実行します:./gradlew unitTest
すべての機能テストを実行します:./gradlew test -Dtest.single=cucumber/**/
これは、外部システムのプロパティに基づいて除外できます。
-Dtest.profile=integration
そしてbuild.gradleで
test {
if (System.properties['test.profile'] != 'integration') {
exclude '**/*integrationTests*'
}
}