阅读System.out Java测试

jam*_*ean 4 java

我有一个测试控制台应用程序的任务.我可以访问一个方法,但也想检查字符串格式是否正常工作.

由于此方法不返回字符串,而是打印到控制台,有没有办法拦截列表打印行?

测试这种东西甚至有意义吗?

Ana*_*lyG 11

以下是如何捕获输出到System.out的示例:

java.io.ByteArrayOutputStream out = new java.io.ByteArrayOutputStream();    
System.setOut(new java.io.PrintStream(out));    

System.out.println("Test output");    
System.err.println("Out was: " + out.toString());
Run Code Online (Sandbox Code Playgroud)