2016-07-21 11 views
1

私は、ビルドプロセスをスキップして、直接、私はまた、ADBコマンドを使用することができますが、それは一度に一つだけdeivce上でテストを実行しますテストを実行する前にAndroid gradle skip buildを実行しますか?

./gradlew connectedDevDebug 

を行う際にテストを実行したいと思います。

+0

を参照することができ、コマンドラインからテストを開始する手順については

./gradlew installDebugAndroidTest 

なぜビルドをスキップしたいのですが、どうすればapkを入手できますか?デフォルトで変更がなければ、Gradleはビルドをスキップします。 – WenChao

+0

デバッグおよびdebugAndroidTest apkは、。/gradlew iDD iDDATを使用してインストールされています。私はテストを再実行したいだけです(コードは変更されません)。しかし、私が./gradlew cDDATを実行すると、adbコマンドを使用するのに比べて時間がかかります。これは部分的に出力され、 :アプリ:事前に作成UP-TO-DATE :アプリ:preDevDebugBuild UP-TO-DATE :アプリ:checkDevDebugManifest :アプリ:preDevReleaseBuild UP-TO-DATE :アプリ:preProdDebugBuild UP-TO -date :アプリ:preProdReleaseBuild UP-TO-DATE ... :アプリ:packageDevDebugAndroidTest :アプリ:assembleDevDebugAndroidTest :アプリ:すべてのビルドタスクがUP-TO-DATEとだけあるようinstallDevDebug ... –

+0

に見えますapp:checkDevDebugManifestを再実行します。それはどのくらいかかりますか? adbコマンドだけを実行する独自のgradleタスクを作成しない限り、cATを実行する場合は、これらの手順をスキップすることはできません。 – WenChao

答えて

4

現在のところ、テストを実行するだけのタスクはありません。gradle

しかし、一度テストをインストール(実行)すれば、am instrumentコマンドで直接(再)実行できます。開発マシンのコマンドラインから起動するには:

adb shell am instrument -w <test_package_name>/<runner_class> 

実際のコマンドはAndroidStudioの出力からコピーできます。 AndroidStudioからテストを実行してから、テストログビューの一番上までスクロールしてください。

警告がありますが、am instrumentはテストレポートを作成しません。すべてのテスト結果はstdoutに書き込まれます。しかし、stdoutをファイルにパイプして、自分でレポートを作成することができます。私。 this toolは、am instrumentの出力からxml JUnitテストレポートを作成できます。

あなたがテストに変更を加えた場合は、再構築し、それらをインストールすることができます。詳細情報とあなたが公式の記事Test from the Command Line

関連する問題