Как показать вывод log4j в верных тестах - PullRequest
13 голосов
/ 07 декабря 2010

При сбое теста в maven xml-файлы верного теста теста в target/surefire-reports/TEST-<test-name>.xml показывают только стандартный вывод System.output или стандартную ошибку System.err

Когда я использую jdk java.util.logging.Logger, все журналыотображается в стандартной ошибке <system-err> tag, но не отображается при использовании log4j.

Ведение журнала с log4j работает нормально через FileAppender и ConsoleAppender.Он отображается в полном выводе консоли, но не в отдельных файлах отчета о тестировании.

  • Могу ли я настроить log4j для перенаправления его вывода на System.out, чтобы он отображался при перезаписи?* Могу ли я сказать верный способ также показать log4j отладочную информацию?

Ответы [ 2 ]

12 голосов
/ 30 августа 2011
  • Вариант один:

    Для стандартного ведения журнала (System.out / System.err) вы можете получить следующий вывод:

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

    Это сгенерируетвыходные файлы для каждого из тестов.

  • Второй вариант:

    Для конфигурации log4j вы можете создать пользовательские log4j.xml / log4j.properties и просто поместить их вsrc / test / resources.

1 голос
/ 30 августа 2011

Обновление верной версии плагина.

При использовании версии 2.9 вывод log4j отображается в <system-out> при использовании ConsoleAppender

...