95 votes

Journalisation pendant les tests via Gradle

Lors des tests, Gradle semble rediriger stdout/stderr vers project_dir/build/reports/tests/index.html . Existe-t-il un moyen d'éviter cette redirection et d'imprimer les éléments sur la console à la place ?

Information additionnelle:

  • C'est un projet Scala 2.9.1.
  • J'utilise slf4s pour la journalisation.

122voto

roby Points 1723
apply plugin : 'java'

test {
    testLogging.showStandardStreams = true
}

http://gradle.org/docs/current/dsl/org.gradle.api.tasks.testing.Test.html

Cela nécessite une version gradle actuelle. Je suppose que les tests Scala sont exécutés sous la tâche de test Java.

36voto

To Kra Points 1513

J'utilise aussi ( testLogging.exceptionFormat = 'full' ):

 test {
    testLogging.showStandardStreams = true
    testLogging.exceptionFormat = 'full'
}

Ce qui est bien de voir plus de stacktrace

25voto

joshuakcockrell Points 964

Pour les fichiers Android Gradle

Si vous êtes dans un fichier gradle android (si apply plugin: 'com.android.application' est en haut de votre fichier build.gradle)

Ensuite, collez-le dans build.gradle

 // Test Logging
tasks.withType(Test) {
    testLogging {
        events "standardOut", "started", "passed", "skipped", "failed"
    }
}

Pour les fichiers Gradle réguliers

Collez ceci dans build.gradle

 // Test Logging
test {
    testLogging {
        showStandardStreams = true
    }
}

22voto

nmfzone Points 743

Comme @roby a répondu :

en ajoutant le code suivant à votre build.gradle

 apply plugin : 'java'

test {
    testLogging.showStandardStreams = true
}

Important!

Vous devez exécuter le test gradle ou construire avec la commande clean ajoutée.

 ./gradlew clean test

or

./gradlew clean build

Espérons que cela fonctionne.

14voto

zhouji Points 1050
test {
    testLogging.showStandardStreams = true
}

et

 test {
    testLogging {
        showStandardStreams = true
    }
}

fonctionne aussi.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X