web-dev-qa-db-ja.com

Gradle Android

私はこの行でテストを実行しようとしています...しかし、これはすべてのテストを起動します:

./gradlew -DconnectedAndroidTest.single=LandingActivityTests connectedAndroidTest

単一のテストを起動するにはどうすればよいですか?

33
Javier Manzano

単一のAndroidテストを2つのステップで実行できます。

  1. ./gradlew installDebugAndroidTest
  2. adb Shell am instrument -w -e class com.example.MyInstrumentationTest#testFoo com.example.test/Android.support.test.runner.AndroidJUnitRunner
    https://developer.Android.com/tools/testing/testing_otheride.html
17
aaashun

Android Gradle plugin version 1.3.0なので、

./gradlew -Pandroid.testInstrumentationRunnerArguments.class=your.package.LandingActivityTests connectedAndroidTest
42
sschuberth

クラス内で1つのテストのみを実行する場合は、次のようにします。

./gradlew -Pandroid.testInstrumentationRunnerArguments.class=my.app.package.register.RegisterEmailTest#can_register connectedAndroidTest

can_registerはクラスRegisterEmailTestのメソッドです

注:パッケージは、クラスが存在する場所を参照する必要があります。それ以外の場合は機能しません。

9
PedroAGSantos

訪問 テスト
残念ながら、gradle connectedAndroidTestタスクはすべての引数をサポートしているわけではありません。
機能リクエスト がGradleチームにあります。
Android Studioを使用している場合、adb Shell am instrumentを介して特定のテストを起動する実行構成を作成できます

3
imort