一直在努力在Play 2.3中使用单元测试获得任何日志输出Logger.error("an error").我已经尝试了所有这些似乎已经过时的例子.
我得到的最接近的是build.sbt包含以下内容:
testOptions in Test += Tests.Argument("-Dlogger.resource=conf/test-logger.xml")
Run Code Online (Sandbox Code Playgroud)
这会导致test-logger.xml文件配置记录器,但我仍然无法从任何测试中获得输出.
在Play 2.3中有没有人有过这方面的成功?
临时解决方法
我目前正在使用一个快速的util类来处理它,直到它被修复.这里添加,因为它可能对其他人有用.
public class Logger {
public static void debug(String message) {
System.out.println(String.format("[debug] %s", message));
}
public static void info(String message) {
System.out.println(String.format("[info] %s", message));
}
public static void warn(String message) {
System.out.println(String.format("[warn] %s", message));
}
public static void error(String message) {
System.err.println(String.format("[error] %s", message));
}
}
Run Code Online (Sandbox Code Playgroud) 即使光标位于当前行的中间,此快捷方式也应该有效.就像在带有SHIFT+的Eclipse中一样ENTER.