Gradle を使用して 1 つのユニット テスト クラスのみを実行するにはどうすればよいでしょうか? 質問する

Gradle を使用して 1 つのユニット テスト クラスのみを実行するにはどうすればよいでしょうか? 質問する

私は Gradle を初めて使います。Gradle 1.10 と Ubuntu 13 を使用しています。

次のような単体テストクラスだけを実行するコマンドがあるかどうか知りたいです。testOnlySBT で。

ベストアンサー1

単一のテスト クラスを実行するには、Airborn の回答が適切です。

いくつかのコマンドラインオプションを使用すると、ここ、次のように簡単に行うことができます。

gradle test --tests org.gradle.SomeTest.someSpecificFeature
gradle test --tests '*SomeTest.someSpecificFeature'
gradle test --tests '*SomeSpecificTest'
gradle test --tests 'all.in.specific.package*'
gradle test --tests '*IntegTest'
gradle test --tests '*IntegTest*ui*'
gradle test --tests '*IntegTest.singleMethod'
gradle someTestTask --tests '*UiTest' someOtherTestTask --tests '*WebTest*ui'

Gradleのバージョン1.10から、テストの選択がサポートされるようになりました。テストフィルター。 例えば、

apply plugin: 'java'

test {
  filter {
    //specific test method
      includeTestsMatching "org.gradle.SomeTest.someSpecificFeature"

     //specific test method, use wildcard for packages
     includeTestsMatching "*SomeTest.someSpecificFeature"

     //specific test class
     includeTestsMatching "org.gradle.SomeTest"

     //specific test class, wildcard for packages
     includeTestsMatching "*.SomeTest"

     //all classes in package, recursively
     includeTestsMatching "com.gradle.tooling.*"

     //all integration tests, by naming convention
      includeTestsMatching "*IntegTest"

     //only ui tests from integration tests, by some naming convention
     includeTestsMatching "*IntegTest*ui"
   }
}

マルチフレーバー環境(Androidの一般的な使用例)の場合、この答えを確認してください引数がサポートされていないため--tests、エラーが発生します。

おすすめ記事