【问题标题】:How to write junit for Logging in Java using mockito如何使用 mockito 为 Java 中的 Logging 编写 junit
【发布时间】:2015-03-08 17:15:10
【问题描述】:

我必须为日志编写 JUNIT。我正在使用 logback 来记录消息。 我将字符串作为日志类型标识符,并根据日志类型进行相应的记录。我是 Junit 的新手,并没有为 Logging 编写 mockito。 代码:

switch (logtype) {
   case "ERROR":
      for(String messages:errorMessages)
      {
          LOG.error(messages.replace("\\n", "\n").replace("\t", " "));
      }
      break;
   case "DEBUG": 
      for(String messages:errorMessages)
      {
          LOG.debug(messages.replace("\\n", "\n").replace("\t", " "));
      }
      break;
   case "DEBUG":
      for(String messages:errorMessages)
      {
          LOG.warn(messages.replace("\\n", "\n").replace("\t", " "));
      }
      break;              
   default:
      for(String messages:errorMessages)
      {
          LOG.info(messages.replace("\\n", "\n").replace("\t", " ")); 
      }
      break;
}                 

【问题讨论】:

    标签: java logging junit mockito


    【解决方案1】:

    我建议不要使用 Mockito,而是安装一个记录器并对记录的日志消息进行断言。这样,如果您有要格式化的记录器,您可以断言格式化看起来是正确的。

    我个人不建议为任何日志记录添加测试以获取信息或调试。为细粒度日志添加断言会使向代码中添加新的日志调用变得更加困难。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-09-06
      • 2018-05-15
      • 2018-03-04
      • 2019-05-24
      • 2015-08-30
      • 2019-06-21
      • 1970-01-01
      相关资源
      最近更新 更多