Agile, test-driven development
Moose – Found Without Searching
The CPAN Test::Class::Moose module is still in beta; I only learned of its existence at the Perl YAPC conference [3] in early June in Austin, Texas – just a few hours before deadline for this issue. My first impression is that it is very stable; however, if you find any bugs, the author welcomes reports or patches for the module.
The advantage of test-driven development is undoubtedly the ever-growing test suite, which – if the developer works to plan – provides virtually 100 percent code coverage. If the customer suddenly springs change requests on you in the course of the project, TDD enthusiasts can adopt them without any worries, as the test suite guarantees that their adoption won't introduce fatal errors to previously working parts of the code.
Agile developers also need not worry too much about the most elegant way to implement a specific feature. A straightforward approach is good enough for the time being, and once the test suite shows green, they can move on to the next feature.
After spending a certain time in rapid development, you will naturally come across ugly pieces of code that need to be fixed every few iterations to make the software maintainable: If you find a duplicated piece of code, it can usually be swapped out into a function, and if parts of the system turn out to be known software patterns, you will want to convert them to their reference implementations.
This refactoring is a natural part of the process and does not usually cause any problems – again, thanks to the existing test suite and its extensive code coverage. If the test suite shows you a green light, your spring cleaning was successful.
Infos
- Listings for this article: ftp://ftp.linux-magazin.com/pub/listings/magazine/154
- Test::Class::Moose: http://search.cpan.org/~ovid/Test-Class-Moose-0.12/lib/Test/Class/Moose.pm
- Yet Another Perl Conference: http://www.yapc.org
« Previous 1 2 3
Buy this article as PDF
(incl. VAT)