Do you have a question? Post it now! No Registration Necessary. Now with pictures!
- Misha Gorodnitzky
April 19, 2009, 12:40 am
rate this thread
I've been working on a testing framework which aims to bring BDD to
Perl (see http://en.wikipedia.org/wiki/Behavior_Driven_Development for
more info on BDD). This is still a work in progress (you can follow
along and/or contribute at http://github.com/misaka/courgette/tree/master )
but it's nearing the point where I'd like to start to nail down the
correct namespace(s) for eventual uploading to CPAN.
The project is called 'Courgette' (it's loosely based on 'Cucumber',
the equivalent project for Ruby) and everything currently lives in a
single namespace. However I can see two major components to the
project, one is the framework for reading in feature stories &
scenarios and the other is the runner to make it easily usable from
the command-line. Here's what I've currently got:
Courgette - Module encapsulating loading of features and steps.
Courgette::Display - Parent class for display modules.
Courgette::Display::PlainConsole - Display module for plain-text to
Courgette::Feature - Encapsulates a feature and their scenarios.
Courgette::Step - Class for code refs that implement steps in
Courgette::World - Scope that steps run in.
It would probably make sense to rename the last three modules into the
Test namespace, I think:
Courgette::Feature -> Test::Feature
Courgette::Step -> Test::Feature::Step
Courgette::World -> Test::Feature::World
Hopefully this would allow people to use features and steps written
for a project with a different runner. I'd appreciate hearing any
suggestions or advice people may have, regarding the namespace or even
other aspects ... design, implementation, etc.
- » HTML::SimpleLinkExtor 1.22 links method returns a list of blanks
- — Previous thread in » PERL Modules Announcements