1. ホーム
  2. java

[解決済み] すべてのテストが最新であるときにGradleのテストを実行するには?

2022-04-23 13:02:16

質問

私はグレードスクリプトを設定しました。 Gradleビルドを実行すると、すべてが動作し、jUnitテストが実行されます。

その後、Gradleのテストを実行すると、次のようになります。

C:\Users\..\..\Project>gradle test
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:compileTestJava UP-TO-DATE
:processTestResources UP-TO-DATE
:testClasses UP-TO-DATE
:test UP-TO-DATE

を実行すると gradle clean であれば、Gradleのビルドはもちろんうまくいくのですが...。 プロジェクト全体をビルドするのではなく、テストだけをリセットできるようにしたいのですが、どうすればいいでしょうか?

解決方法は?

一つの方法として --rerun-tasks フラグを タスクを強制的に実行させる セクションを参照してください。これにより、テストタスクとそれに依存するすべてのタスクが再実行されます。

もしテストの再実行にしか興味がないのであれば、テストを実行する前に gradle がテスト結果を消去するようにするのも一つの方法でしょう。これは cleanTest タスクがあります。

いくつかの背景 - Javaプラグインは、他の各タスクにクリーンタスクを定義しています。によると タスク のドキュメントを参照してください。

cleanTaskName - cleanJar は jar タスクが作成した JAR ファイルを、cleanTest はテストタスクが作成したテスト結果を削除します。

したがって、テストを再実行するために必要なのは cleanTest タスク、すなわち

gradle cleanTest test