Как включить робоэлектрическое ведение журнала

Мне нужен очень простой способ заставить Robolectric 3.0 включить ведение журнала. Я хочу увидеть результаты работы robolectric, а не только мои тесты. Все, что я пробовал в Интернете, не работает.

Куда мне это втыкать?

robolectric.logging.enabled = true

Я попробовал следующее:

В файле robolectric.properties в test/java/res

В файле robolectric.properties в test/java/resources

В файле robolectric.properties в test/res

В файле robolectric.properties в test/resources

В градиенте:

afterEvaluate {
    project.tasks.withType(Test) {
        systemProperties.put('robolectric.logging.enable', 'true')
    }
}

В градиенте:

tasks.withType(Test) {
    testLogging.exceptionFormat = 'full'
    systemProperties.put('robolectric.logging.enable', 'true')
}

person LEO    schedule 07.08.2015    source источник
comment
Когда вы имеете в виду ведение журнала, что вы ожидаете увидеть? Результат тестов?   -  person Jared Burrows    schedule 07.08.2015
comment
Я отредактирую вопрос. Я хочу посмотреть, что делает robolectric. Я хочу знать, что делает ContextImpl.ensureDirsExistOrFilter() под капотом.   -  person LEO    schedule 07.08.2015
comment
Каков статус по этому поводу?   -  person Jared Burrows    schedule 10.08.2015


Ответы (1)


Вы можете добавить к своим тестам:

@Before
public void init() { 
    ShadowLog.stream = System.out;
}

затем используйте: gradle test -i

Источник: Не удалось получить log.d или вывести Robolectrict + gradle< /а>

или добавьте в build.gradle:

tasks.withType(Test) { 
     systemProperty "robolectric.logging", "stdout" 
} 

Источник: https://github.com/studyplus/Studyplus-Android-SDK/blob/master/StudyplusAndroidSDK/build.gradle#L41

person Jared Burrows    schedule 07.08.2015
comment
Еще немного пояснений: ShadowLog.stream = System.out, регистрирует только мои тесты, но дополнение gradle регистрирует все, материалы robolectric и мои личные тестовые материалы. - person LEO; 10.08.2015
comment
Большой! Спасибо за Ваше подтверждение. - person Jared Burrows; 10.08.2015
comment
У меня работает только первый вариант с ShadowLog. С этим добавлением я получаю вывод журнала из всех моих операторов журнала в приложении, напечатанном на терминале. - person slott; 08.01.2016
comment
Что насчет этого вопроса? Не могли бы вы помочь мне с этим? stackoverflow.com/ вопросы/35726314/ - person JoseF; 01.03.2016
comment
Подходит ли предложение build.gradle для Roboelectric 3.0 с Gradle 2? Когда я пытаюсь это сделать, это не работает, и Android Studio предупреждает, что не может разрешить «systemProperty». - person sidecarcat; 18.04.2016
comment
Да обоим. Последняя версия Gradle — 2.12. - person Jared Burrows; 18.04.2016
comment
Спасибо @JaredBurrows. Android Studio v2 жалуется: не удается разрешить символ systemProperty. Я сравнил свой build.gradle с вашим примером, но вы используете Roboelectric 2.4 и плагин «robolectric», который устарело сейчас. У вас есть обновленный пример? - person sidecarcat; 18.04.2016
comment
@sidecarcat Используйте gradlew через командную строку. Не полагайтесь на Android Studio. Какую версию градла вы используете? Это не мой пример. См. Test и systemProperty здесь: docs.gradle. org/current/dsl/. - person Jared Burrows; 18.04.2016
comment
только первый вариант работает с robolectric 3.1.2 (systemProperty не влияет) - person TmTron; 10.10.2016