16

Maven でテストが失敗すると、確実なテスト レポートの xml ファイルにtarget/surefire-reports/TEST-<test-name>.xml標準出力System.outputまたは標準エラーのみが表示されます。System.err

jdk を使用すると、java.util.logging.Loggerすべてのログが Standard Error<system-err> tagに表示されますが、log4j を使用すると表示されません。

log4j によるロギングは、FileAppender と ConsoleAppender を介して正常に機能しています。コンソール出力全体に表示されますが、個々のテスト レポート ファイルには表示されません。

  • 出力をリダイレクトするように log4j を構成しSystem.outて、確実なレポートに表示することはできますか?
  • log4j デバッグ ログも表示するように確実に指示できますか?
4

2 に答える 2

15
  • オプション1:

    標準ロギング(System.out / System.err)の場合、次の出力を得ることができます。

        <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.8.1</version>
    
            <configuration>
                <redirectTestOutputToFile>true</redirectTestOutputToFile>
            </configuration>
        </plugin>
    

    これにより、各テストの出力ファイルが生成されます。

  • オプション2:

    log4j構成の場合、カスタムlog4j.xml / log4j.propertiesを作成し、それをsrc / test/resourcesの下に配置するだけです。

于 2011-08-30T15:06:40.957 に答える
1

Surefire プラグインのバージョンを更新します。

<system-out>ConsoleAppender を使用すると、バージョン 2.9 を使用して log4j 出力が表示されます

于 2011-08-30T17:05:10.793 に答える