将数据写入 System.in
在我们的应用程序中,我们希望用户输入如下:Thread
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
我想在我的单元测试中传递该部分,以便我可以恢复线程以执行其余代码。我怎样才能从 junit 写一些东西?System.in
在我们的应用程序中,我们希望用户输入如下:Thread
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
我想在我的单元测试中传递该部分,以便我可以恢复线程以执行其余代码。我怎样才能从 junit 写一些东西?System.in
在测试期间替换它:
String data = "the text you want to send";
InputStream testInput = new ByteArrayInputStream( data.getBytes("UTF-8") );
InputStream old = System.in;
try {
System.setIn( testInput );
...
} finally {
System.setIn( old );
}