Где находится журнал LogCat.X () выход go при запуске тестов Android JUnit?

Я заметил, что при тестировании простых классов Java через тестовые классы, производные от TestCase и AndroidTestCase, выход LogCat исчезает.

можно ли по-прежнему фиксировать вывод этих сообщений? или мой единственный выход-использовать гораздо более вялый ActivityInstrumentationTestCase2<> как базовый класс?

4 ответов


У меня была аналогичная проблема... Дело в том, что представление logcat, доступное в Eclipse, ничего не показывает при запуске проекта в режиме Android Junit. По крайней мере, в Android 2.1, который я использовал, это поведение.

вы можете обойти эту проблему, проверив logcat из командной строки (окно терминала):

# check the device name you are using
# It gives something like this:
$ ./adb devices
List of devices attached 
emulator-5554   device

# open logcat of the device
$ ./adb -s emulator-5554 logcat
D/AndroidRuntime(  943): 
D/AndroidRuntime(  943): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<<
D/AndroidRuntime(  943): CheckJNI is ON
.
.
.

оба этих оператора производят вход в logcat:

    android.util.Log.d(TAG, "This is Log.d");
    System.out.println("This is System.out.println");

только для тех, кто использует Android Studio. Вы можете открыть окно Android DDMS tool (Cmd + 6) и отключить все фильтры с помощью выпадающего списка в правом верхнем углу. Это, кажется, использовать app:com.your.package.name по умолчанию, который фильтрует тестовый вывод.


просто используя Log.v("MyIdentifier","MyMessage") операторы, похоже, регистрируют все для меня, как из самих классов модульных тестов, так и из моего тестируемого приложения Android.

эта информация может помочь кому-то использовать Android jUnit в первый раз:

Android jUnit тестирование будет только фактически начать деятельность, когда getActivity() вызывается из тестового класса. Если действие get не вызывается, вы не увидите результатов ни одного из вызовов журнала, которые вы написали, например onCreate или onResume. Кажется, есть исключение из этого правила, хотя, когда активность, отмеченная как "Main" и "Launcher" в Манифесте Android, тестируется.