Nous utilisons slf4j avec une construction Maven. Lors de l'écriture de code, nous n'incluons pas de dépendance à une implémentation de slf4j (comme le logback), mais seulement à slf4j lui-même. Dans un tel contexte, lorsque nous exécutons des tests d'intégration (unitaires), slf4j revient à une implémentation No-op et tous les journaux produits par le code SUT (systèmes en cours de test) sont "ignorés" comme prévu.Comment puis-je activer et désactiver la journalisation dans les tests utilisant slf4j et Maven?
C'est très bien, mais parfois nous avons besoin d'afficher ces journaux SUT (débogage). Habituellement, nos développeurs ajoutent une dépendance au logback avec une portée test
pour y parvenir et écrire des logs sur la console. Je ne suis pas un grand fan de cette approche, mais tant qu'ils n'oublient pas de supprimer la dépendance avant de valider le code, ça me va bien ... Cependant, ce switch on/off peut se produire plusieurs fois et est donc sujet aux erreurs (et nous nous retrouvons avec des journaux de construction inondés).
Existe-t-il un meilleur moyen d'y parvenir? Par exemple, quitter le journal en tant que test
dépendance étendue tout le temps, mais en définissant une propriété qui éviterait que les journaux soient générés à moins que la propriété ne soit supprimée (une sorte de propriété "Force No-Op")?
Merci à l'avance,
Je ne pensais pas à l'aide d'un 'logback-test.xml' avec' .gitignore'. Nice et merci! – Kraal
tout le plaisir est pour moi, merci à Essex Boy pour le fair-play :) – Gab