Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re: Re: Testing Non-module code

by paulbort (Hermit)
on Mar 16, 2004 at 18:59 UTC ( #337090=note: print w/ replies, xml ) Need Help??


in reply to Re: Testing Non-module code
in thread Testing Non-module code

I also have a lot of procedural code, some modules, and some subroutines. The (partially implemented) plan here is:

  • Use normal module testing for all the modules
  • Ditto subroutines
  • Use WWW::Mechanize in a test script to test the CGI
  • For all of the other programs, have the test script build a proper environment (set inputs and such) and then qx// the script to be tested. Then use the Test::More functions on the results. (If the program was supposed to create file '/tmp/foo', then do ok( -e '/tmp/foo' ).)

An example of the last: the application I'm developing here has a series of Perl scripts that create and setup the initial database. The test script can test these by making sure there is no database of that name, then running the scripts in qx//, and checking to see if the database exists and has the right tables. (Quick aside: Always generating your db from a re-runnable, extendable script comes in handy later.)

This will also work for scripts that are just supposed to read from one queue in the database and write to another: Set up something in the DB for the script to do, run the script, see if the output is good.


--
Spring: Forces, Coiled Again!


Comment on Re: Re: Testing Non-module code
Re: Re: Re: Testing Non-module code
by grantm (Parson) on Mar 17, 2004 at 08:39 UTC
    Use WWW::Mechanize in a test script to test the CGI

    If you're using Apache, you might like to check out Apache::Test. I've found it to provide a very usable framework.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (4)
As of 2014-09-21 15:00 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (172 votes), past polls