JUnit을 사용하여 System.in 테스트
소프트웨어 테스트 영역에서 사용자 입력을 시뮬레이션해야 하는 문제에 자주 직면합니다. 명령줄 프로그램. 프로그램이 System.in을 통해 입력을 요구할 때 JUnit 테스트에서 이 동작을 어떻게 자동화합니까?
솔루션
System.in을 우회하고 시뮬레이션된 사용자 입력을 삽입하려면 , 다음 단계를 따르세요.
System.in을 동적으로 전환합니다.
Java 8 스트림을 사용하여 System.in을 조작합니다. 개울. 예를 들면 다음과 같습니다.
<code class="java">String data = "Hello, World!\r\n"; InputStream stdin = System.in; try { System.setIn(new ByteArrayInputStream(data.getBytes())); Scanner scanner = new Scanner(System.in); System.out.println(scanner.nextLine()); } finally { System.setIn(stdin); }</code>
위 내용은 명령줄 프로그램에 대한 JUnit 테스트에서 사용자 입력을 어떻게 시뮬레이션할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!