[[using-shell-testing]] = Testing :page-section-summary-toc: 1 ifndef::snippets[:snippets: ../../../../src/test/java/org/springframework/shell/docs] Testing CLI application is difficult due to various reasons: - There are differences between OS's. - Within the same OS there may be different shell implementations in use. - What goes into a shell and comes out from a shell may be totally different from what you see in the shell itself due to invisible control characters. - The shell may feel synchronous but most likely it is not, meaning when something is written into it, you can't assume next update in it is not final. NOTE: Testing support is currently under development and will be unstable for various parts.