We need a way to measure the extent to which Parrot's test suite covers
the Parrot specification. Since the specification is expressed in words
rather than code, a quantitative measurement of the "spec coverage" is
unlikely. However, a visual representation of that coverage is possible
and desirable. For example, HTML versions of the Parrot design
documents might carry annotations which indicate which tests exercise
the code described in particular paragraphs in the PDDs.
The objective of this RT is to develop a specification for a new spec
coverage mechanism. The specification, like other PDDs, should be
written in Perl 5 POD. This specification should define key terms; it
should not assume, for example, that everyone knows what a 'smartlink'
is. It should describe the graphic appearance of the spec coverage
mechanism and specify what functionality (e.g., 'mouse over') the
functionality will have. While it should draw upon "prior art" where
appropriate, it should not depend on a reader being previously familiar
with, e.g., the Pugs implementation.
The specification should also include a plan for testing the spec
coverage mechanism, including both unit and functionality tests. A
testing plan, in broad outline, should exist before any code is written.
The code should be written in easily maintainable Perl 5 and documented
in Perl 5 POD.
Note: While the spec coverage mechanism will ultimately have to be
written in Perl 5 POD, we should consider doing some early drafts on the
Parrot wiki. Those readers of the list who want to work on this project
should speak up as to whether this is a good way to proceed.
FYI, some existing tools (but not Perl)
- FIT : http://fit.c2.com/
- FitNesse & Slim : http://fitnesse.org/
But, I don't know Perl equivalent.
François
> Thank you very much.
> kid51
> _______________________________________________
> http://lists.parrot.org/mailman/listinfo/parrot-dev
>
>
Thanks for the reference. If someone wants to examine these links and
open a TT, they are welcome to do so.
In the meantime, resolving this ticket.