just from what i've seen...the test harness would use chmod (for example) which works equally well on linux and unix, but windows is a different beast of course for most systems that don't have cygwin installed...our systems did. anyway, the point of using system utilities instead of perl built-ins is to more closely approximate system conditions in a production environment. whilst i wouldn't preclude totally using some perl in a test harness, i think you need some degree of separation from test harness and app/module being tested. otherwise you're writing just a slight variation of the original script, instead of a test harness, i think.
a good example of test harness methodology and code is the various test/install scripts in unix/linux software, or even the unix/linux oracle installer scripts.
the hardest line to type correctly is: stty erase ^H