Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re: The Joy of Test

by gmax (Abbot)
on Apr 11, 2002 at 19:43 UTC ( #158407=note: print w/ replies, xml ) Need Help??


in reply to The Joy of Test

Thanks, Ovid.
You're one step ahead of me in this respect. I have already figured out that subs stubs (for which I even write the documentation before hacking the code) are the right path toward implementing a good design, but I didn't think of integrating them into my test.pl.
Instead, I was endlessly running test cases that were doing the same thing you are saying, only more complicated.
I am going to try out your suggestion, which I foresee could simplify my coding practice. However, I have a doubt that maybe is just a technical quibble. I am used to make small test scripts, and to run them against different aspects of the module I am building up. Is there any ready-to-use idiom to make a test.pl script by assembling several small ones together?
Keep on the good work.

 _  _ _  _  
(_|| | |(_|><
 _|   


Comment on Re: The Joy of Test
Re: Re: The Joy of Test
by Ovid (Cardinal) on Apr 11, 2002 at 19:53 UTC

    gmax asked if there was a "ready-to-use idiom to make a test.pl script by assembling several small ones together?"

    You can look at the documentation for Test::Harness. This module will allow you to run tests from several different sources and will return results based upon their output to STDOUT. Here's a script from the docs to have Test::Harness test itself, using all test scripts in the "t" directory.

    $ cd ~/src/devel/Test-Harness $ perl -Mblib -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t Using /home/schwern/src/devel/Test-Harness/blib t/base..............ok t/nonumbers.........ok t/ok................ok t/test-harness......ok All tests successful. Files=4, Tests=24, 2 wallclock secs ( 0.61 cusr + 0.41 csys = 1.02 C +PU)

    Cheers,
    Ovid

    Join the Perlmonks Setiathome Group or just click on the the link and check out our stats.

      using all test scripts in the "t" directory.

      Actually as you can see from the header output:

      $verbose=0; runtests @ARGV;' t/*.t <----

      only scripts named *.t will get run. This is usefull as you can stop a test script in the t/ dir running simply by renaming it say widget.test

      cheers

      tachyon

      s&&rsenoyhcatreve&&&s&n.+t&"$'$`$\"$\&"&ee&&y&srve&&d&&print

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://158407]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (4)
As of 2014-07-10 04:20 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (198 votes), past polls