in reply to How do you test end-user scripts?

>>Assume for the sake of argument that operates in a unix-y way (ie, not interactive, takes in some input from stdin, does magic, and writes output to stdout)

If you do decide to run your scripts, you might want to look at Test::Script::Run.

I'm using it to write tests that run on various Unixes.

I've also experimentally tried it on Windows; seems to work there as well.