【发布时间】:2021-11-17 06:45:16
【问题描述】:
这是我的代码:
public class Foo {
public static void main(String... args) {
// reconfigure global logging
// do something else
}
}
我如何在不模拟的情况下从 JUnit(或者可能不是)进行测试?我希望这个main() 函数完全按照它通常会做的事情,然后捕获它的控制台输出以进行断言。当然,如上所述,重新配置全局日志不会干扰其他测试。基本上,我需要一个新的 JVM 来运行它。
【问题讨论】:
-
做到这一点。
-
你是什么意思:'catch its console output'?
-
@Stultuske 好吧,它会在控制台打印一些东西,我想得到它并传递给 JUnit 断言进行验证