haskell
shelltestrunner is a cross-platform tool for testing command-line
programs (or arbitrary shell commands.) It reads simple declarative tests
specifying a command, some input, and the expected output, error output
and exit status. Tests can be run selectively, in parallel, with a
timeout, in color, and/or with differences highlighted.