Implementing the Test-Run vision directly above T::P/TAP::Harness

Shlomi Fish shlomif at iglu.org.il
Tue Oct 2 20:50:06 BST 2007


Hi all!

As you may know, once upon a time (before the
TAP::Parser/TAP::Harness/Test::Harness-3.x effort took off), I forked off
Test-Harness into Test-Run and started refactoring it. Later on, I converted
Test::Run::Straps to use TAP::Parser, but most of the code is still derived
from Test::Harness-2.x.

Now, I still retained most the original output syntax of Test-Harness and its 
semantics, and most of the enhancements are in the internals. I wrote some 
plugins for Test-Run:

http://search.cpan.org/search?mode=all&query=test%3A%3Arun%3A%3Aplugin

But the work done on them was very small compared to the ovrall effort of 
refactoring.

So I've been wondering: would it be a better idea to implement my original 
vision for Test-Run directly above TAP::Parser and TAP::Harness? I could port 
the enhancements in the plugins that I have so far, and continue the work 
while ditching the old Test-Run codebase.

Some of the enhancements I had in mind (or already implemented) are:

1. Colours - for the summary line and for the individual file verdicts.

2. Running the test scripts using alternate, customisable interpreters.

3. Customise the output using templates, Text::Sprintf::Named, etc. (to 
eliminate the final percents, etc.)

4. Collecting the statistics and data for the entire run, and preparing XML, 
HTML, etc. reports based on it.

5. Performing tests over the wire using TCP/IP, HTTP, etc.

Some of the things I'm looking at for a potential codebase are: 

1. Short methods for easy inheritance and over-riding. That or at least the 
willingness to allow me to factor the code appropriately. (Long methods are 
in any case, identified as a bad code "smell" in Martin Fowler's Refactoring 
book)

2. If there are helper objects which I may wish to over-ride, then I need the 
ability to specify roles or plugins for them.

Regards,

	Shlomi Fish

---------------------------------------------------------------------
Shlomi Fish      shlomif at iglu.org.il
Homepage:        http://www.shlomifish.org/

If it's not in my E-mail it doesn't happen. And if my E-mail is saying
one thing, and everything else says something else - E-mail will conquer.
    -- An Israeli Linuxer


More information about the tapx-dev mailing list