X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FManual%2FTutorial%2F08_Testing.pod;h=eb33e628ba3dddd1b8d9fb75878e2ffaaf9807c2;hb=d5d7ee980cf02b9a519bc006a0f85b965d028ee2;hp=b555c2268c4a783b695a2d7418776b39fa403df3;hpb=6c0a745efa9798edf8e9ac231027bfc997485054;p=catagits%2FCatalyst-Manual.git diff --git a/lib/Catalyst/Manual/Tutorial/08_Testing.pod b/lib/Catalyst/Manual/Tutorial/08_Testing.pod index b555c22..eb33e62 100644 --- a/lib/Catalyst/Manual/Tutorial/08_Testing.pod +++ b/lib/Catalyst/Manual/Tutorial/08_Testing.pod @@ -65,7 +65,7 @@ upgrade various pieces of your application over time. You can check out the source code for this example from the Catalyst Subversion repository as per the instructions in -L. +L. For an excellent introduction to learning the many benefits of testing your Perl applications and modules, you might want to read 'Perl Testing: @@ -167,10 +167,10 @@ For example: Although the Catalyst helper scripts provide a basic level of checks "for free," testing can become significantly more helpful when you write your own script to exercise the various parts of your application. The -L module +L module is very popular for writing these sorts of test cases. This module -extends L (and therefore -L) to allow you to automate the action of +extends L (and therefore +L) to allow you to automate the action of a user "clicking around" inside your application. It gives you all the benefits of testing on a live system without the messiness of having to use an actual web server, and a real person to do the clicking. @@ -188,8 +188,8 @@ editor and enter the following: # Can also do: # use Test::WWW::Mechanize::Catalyst "MyApp"; - use ok "Test::WWW::Mechanize::Catalyst" => "MyApp"; - + BEGIN { use_ok("Test::WWW::Mechanize::Catalyst" => "MyApp") } + # Create two 'user agents' to simulate two different users ('test01' & 'test02') my $ua1 = Test::WWW::Mechanize::Catalyst->new; my $ua2 = Test::WWW::Mechanize::Catalyst->new; @@ -282,13 +282,13 @@ editor and enter the following: The C test cases uses copious comments to explain each step of the process. In addition to the techniques shown here, there are a variety of other methods available in -L (for +L (for example, regex-based matching). Consult the documentation for more detail. B: For I vs. the "full application tests" approach used -by L, see -L. +by L, see +L. B The test script does not test the C and C actions. That is left as an exercise for the reader @@ -347,7 +347,7 @@ the state of the application right before or after the failure. You may wish to leverage the techniques discussed in this tutorial to maintain both a "production database" for your live application and a "testing database" for your test cases. One advantage to -L is that +L is that it runs your full application; however, this can complicate things when you want to support multiple databases. @@ -410,18 +410,18 @@ t/controller_Foo.t: use strict; use warnings; use Test::More; - + BEGIN { $ENV{ MYAPP_CONFIG_LOCAL_SUFFIX } = 'testing'; } - + eval "use Test::WWW::Mechanize::Catalyst 'MyApp'"; plan $@ ? ( skip_all => 'Test::WWW::Mechanize::Catalyst required' ) : ( tests => 2 ); - + ok( my $mech = Test::WWW::Mechanize::Catalyst->new, 'Created mech object' ); - + $mech->get_ok( 'http://localhost/foo' ); @@ -429,10 +429,13 @@ t/controller_Foo.t: Kennedy Clark, C -Please report any errors, issues or suggestions to the author. The -most recent version of the Catalyst Tutorial can be found at +Feel free to contact the author for any errors or suggestions, but the +best way to report issues is via the CPAN RT Bug system at +. + +The most recent version of the Catalyst Tutorial can be found at L. -Copyright 2006-2008, Kennedy Clark, under Creative Commons License +Copyright 2006-2010, Kennedy Clark, under the +Creative Commons Attribution Share-Alike License Version 3.0 (L). -