System.out.println() 输出的 JUnit 测试
在遗留应用程序中,仅依靠标准错误消息进行故障排除可能具有挑战性打印到控制台。为了缓解这个问题,JUnit 提供了捕获和断言控制台输出的方法。
要测试 System.out.println() 输出,请考虑以下方法:
初始化输出捕获:
执行测试:
断言输出:
示例测试案例:
@Test public void testOut() { System.out.print("hello"); assertEquals("hello", outContent.toString()); } @Test public void testErr() { System.err.print("error occurred"); assertEquals("error occurred", errContent.toString()); }
注意: 确保在每次使用originalOut 和originalErr 进行测试后恢复System.setOut() 和System.setErr() 调用。如果不这样做,可能会在后续测试中导致 NullPointerExceptions。
以上是JUnit 如何有效测试 System.out.println() 输出?的详细内容。更多信息请关注PHP中文网其他相关文章!