使用 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中文網其他相關文章!