How to turn on robolectric logging

2020-06-11 16:09发布

问题:

I need a very simple way to get Robolectric 3.0 to turn on logging. I want to see the output from robolectric, not just my tests. Everything I tried off the web is not working.

Where do I stick this?

robolectric.logging.enabled = true

I tried the following:

In a robolectric.properties file in test/java/res

In a robolectric.properties file in test/java/resources

In a robolectric.properties file in test/res

In a robolectric.properties file in test/resources

In gradle:

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

In gradle:

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

回答1:

You can add to your tests:

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

then use: gradle test -i

Source: Unable to get log.d or output Robolectrict + gradle

or Add in the build.gradle:

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

Source: https://github.com/studyplus/Studyplus-Android-SDK/blob/master/StudyplusAndroidSDK/build.gradle#L41