--tests
オプション
以下のようにして対象のテストクラス(HogeTest
)を指定できる
./gradlew test --tests com.example.HogeTest
メソッドまで指定することも可能
./gradlew test --tests com.example.HogeTest.fooMethodTest
ワイルドカード(*
)を利用して複数のテストを指定することもできる
./gradlew test --tests com.example.\*Test
このオプションは「実行するテスト」は指定できるが、「実行しないテスト」を指定することはできない。
-Dtest.single
というオプションもあるが、--tests
で代替可能。
include
/exclude
関数
テスト対象に包含/除外するテストを指定できる
test {
include 'com/example/HogeTest.class'
exclude '**/*Foo*'
}
--tests
とは異なり、.class
ファイルへのパスを指定する。
Test Grouping
build.gradle
に記述することで、特定のカテゴリに属するテストを包含/除外することができる
test {
useJUnit {
includeCategories 'com.example.CategoryA'
excludeCategories 'com.example.CategoryB', 'com.example.CategoryC'
}
}
カテゴリはInterfaceとして作成し、@Category
アノテーションを通じて指定する
interface MyCategory
@Category(MyCategory::class)
class HogeTest {
// some tests...
}
ちなみにこれを使うと、@RunWith(JUnitRunner::class)
を指定したテストが認識されなくなった(謎)。
おまけ:Androidでの設定
Androidではbuild.gradle
の以下のブロックに設定を記述する
android {
unitTests.all {
// here
}
}