in reply to Writing the output of test::more in to another file

The simplest way would be to redirect STDERR to STDOUT in BEGIN block:
BEGIN { *STDERR = *STDOUT; }

Now, you can redirect to some file with no problems:
test.pl > results.txt

Or you can invoke your program like:

perl test.pl > foo.txt 2>&1
It does the same thing (if you're on Unix-like OS).

Replies are listed 'Best First'.
Re^2: Writing the output of test::more in to another file
by Kashratul (Acolyte) on Mar 06, 2008 at 07:29 UTC
    thanks that worked.

    In 'perl test.pl > foo.txt 2>&1'

    What "2>&1" is for? thanks

      You can read more about that in Bash Guide for Beginners, chapter 9. Here's a quote from that document that explains "1" and "2": Each open file gets assigned a file descriptor. The file descriptors for stdin, stdout, and stderr are 0, 1, and 2, respectively.

      So "2>&1" means: redirect stderr to stdout. See more examples in the guide.