2016-04-05 16 views
7

Windowsシステムでcmdを開き、 "adb shell am instrument -w com.demo.uia.test/android.support.test.runner.AndroidJUnitRunner"を入力してアンドロイドテストを実行します。アンドロイド計測器テスト実行中にcmdコンソールでログを出力する方法

私はログを印刷するコードを書く方法を教えてくれますか?私はsystem.out.println("xx")Log.i("xx","xx")を結んでいますが、無駄です。

logcatではなく、cmd行でログを表示したいとします。 私は今問題を解決し、sendStatus APIを使用してください。

+0

Androidの[マイアプリケーション]からのメッセージのみを取得する[LogCatをフィルタする]の複製がありますか?(http://stackoverflow.com/questions/6854127/filter-logcat-to-get-only-the-messages-from- –

+0

私はlogcatではなくcmdコンソールにログを表示したいと思います。 – MoMo

+0

私は今問題を解決し、sendStatus APIを使用してください。 – MoMo

答えて

2

私は@MoMoは、このコマンドプロンプトウィンドウにログ出力を持っているようなものでした推測:

あなたのテストクラスで関数を定義:

private void out(String str) { 
    Bundle b = new Bundle(); 
    b.putString(Instrumentation.REPORT_KEY_STREAMRESULT, "\n" + str); 
    InstrumentationRegistry.getInstrumentation().sendStatus(0, b); 
} 

そして、単に似@Test機能でそれを使用します:

adbのシェル午前機器でコマンドプロンプトウィンドウでテストを実行しているときに出力が表示されます
out("Some message..."); 

... Android Studioの[実行]ウィンドウには表示されません。それはどうにかしてテスト実行の出力をフィルタリングし、このフィルタを変更する設定を見つけることができません。

関連する問題