如何处理日志记录和单元测试覆盖率?

时间:2014-05-05 15:53:28

标签: junit log4j line code-coverage

知道如何解决这个问题:

  • 我有很多单元测试的课程
  • 这些类使用具有以下级别的Log4j:DEBUG,INFO,ERROR

当我只是运行单元测试并根据配置计算覆盖率时,我将无法完成所有日志记录语句。我使用if (logger.isDebugEnabled()) ...

  • 过去,当应用程序开始在生产中失败时,我已经遇到了问题,我们更改了日志级别do DEBUG以获得更多洞察力,但这导致NullPointerException s(当然编码错误)

  • 理论上,我们可以使用不同级别的日志记录运行所有测试。

任何聪明的方法或任何有助于解决此问题的工具?

1 个答案:

答案 0 :(得分:3)

正如评论中所建议的那样:

  

使用特定于测试的log4j配置将级别设置为DEBUG。

你还提到:

  

我们更改了日志级别do DEBUG以获得更多洞察力,但这导致NullPointerException s

这听起来像个错误。识别这样的错误是整个测试点:现在你可以修复它们。