diff options
Diffstat (limited to 'debian/perl-framework/Apache-Test/README')
-rw-r--r-- | debian/perl-framework/Apache-Test/README | 225 |
1 files changed, 225 insertions, 0 deletions
diff --git a/debian/perl-framework/Apache-Test/README b/debian/perl-framework/Apache-Test/README new file mode 100644 index 0000000..c4d672e --- /dev/null +++ b/debian/perl-framework/Apache-Test/README @@ -0,0 +1,225 @@ +######### +# About # +######### + +Apache::Test is a test toolkit for testing an Apache server with any +configuration. It works with Apache 1.3 and Apache 2.0/2.2/2.4 and any +of its modules, including mod_perl 1.0 and 2.0. It was originally developed +for testing mod_perl 2.0. + +################# +# Documentation # +################# + +For an extensive documentation see the tutorial: + + http://perl.apache.org/docs/general/testing/testing.html + +and the documentation of the specific Apache::Test modules, which can +be read using 'perldoc', for example: + + % perldoc Apache::TestUtil + +and the 'Testing mod_perl 2.0' article: +http://www.perl.com/pub/a/2003/05/22/testing.html + +################### +# Got a question? # +################### + +Post it to the test-dev <at> httpd.apache.org list. The list is +moderated, so unless you are subscribed to it it may take some time +for your post to make it to the list. + +For more information see: http://perl.apache.org/projects/Apache-Test/index.html + +List Archives: +# www.apachelabs.org + +http://www.apachelabs.org/test-dev/ +# marc.theaimsgroup.com + +http://marc.theaimsgroup.com/?l=apache-modperl-test-dev +# Mbox file + +http://perl.apache.org/mail/test-dev/ + +############## +# Cheat List # +############## + +see Makefile.PL for howto enable 'make test' + +see t/TEST as an example test harness + +see t/*.t for example tests + +if the file t/conf/httpd.conf.in exists, it will be used instead of +the default template (in Apache/TestConfig.pm); + +if the file t/conf/extra.conf.in exists, it will be used to generate +t/conf/extra.conf with @variable@ substitutions + +if the file t/conf/extra.conf exists, it will be included by +httpd.conf + +if the file t/conf/modperl_extra.pl exists, it will be included by +httpd.conf as a mod_perl file (PerlRequire) + + + +################## +# Handy examples # +################## + +some examples of what i find handy: +see TEST -help for more options + +test verbosely +% t/TEST -verbose + +start the server +% t/TEST -start + +run just this test (if server is running, will not be re-started) +% t/TEST t/apr/table + +run just the apr tests +% t/TEST t/apr + +run all tests without start/stop of server (e.g. server was started with -d) +% t/TEST -run + +stop the server +% t/TEST -stop + +ping the server to see whether it runs +% t/TEST -ping + +ping the server and wait until the server starts, report waiting time +% t/TEST -ping=block + +reconfigure the server, do not run tests +% t/TEST -configure + +run as user nobody: +% t/TEST -User nobody + +run on a different port: +% t/TEST -Port 8799 + +let the program pick the next available port (useful when running a +few test sessions on parallel) +% t/TEST -Port select + +run on a different server: +% t/TEST -servername example.com + +configure an httpd other than the default (that apxs figures out) +% t/TEST -httpd ~/ap/httpd-2.0/httpd + +configure a DSO mod_perl object other than the default (that stored in +Apache::BuildConfig) +% t/TEST -libmodperl ~/ap/httpd-2.0/modules/mod_perl-5.8.0.so +or one that can be found relative to LIBEXECDIR +% t/TEST -libmodperl mod_perl-5.6.1.so + +switch to another apxs +% t/TEST -apxs ~/ap/httpd-2.0-prefork/bin/apxs + +turn on tracing +% t/TEST -preamble "PerlTrace all" + +GET url +% t/TEST -get /server-info + +HEAD url +% t/TEST -head /server-info + +HEAD (no url defaults to /) +% t/TEST -head + +GET url with authentication credentials +% t/TEST -get /server-info -username dougm -password foo + +POST url (read content from string) +% t/TEST -post /TestApache::post -content 'name=dougm&company=covalent' + +POST url (read content from stdin) +% t/TEST -post /TestApache::post -content - < foo.txt + +POST url (generate a body of data 1024 bytes in length) +% t/TEST -post /TestApache::post -content x1024 + +POST url (only print headers, e.g. useful to just check Content-length) +% t/TEST -post -head /TestApache::post -content x100000 + +GET url (only print headers, e.g. useful to just check Content-length) +% t/TEST -get -head /foo + +start server under gdb +% t/TEST -debug + +start server under strace (outputs to t/logs/strace.log) +% t/TEST -d strace + +run .t test under the perl debugger +% t/TEST -d perl t/modules/access.t + +run .t test under the perl debugger (nonstop mode, output to t/logs/perldb.out) +% t/TEST -d perl=nostop t/modules/access.t + +control how much noise Apache::Test should produce. to print all the +debug messages: +% t/TEST -trace=debug +to print only warnings and higher trace levels: +% t/TEST -trace=warning +the available modes are: + emerg alert crit error warning notice info debug + +turn on -v and LWP trace (1 is the default) mode in Apache::TestRequest +% t/TEST -d lwp t/modules/access.t + +turn on -v and LWP trace mode (level 2) in Apache::TestRequest +% t/TEST -d lwp=2 t/modules/access.t + +run all tests through mod_ssl +% t/TEST -ssl + +run all tests with HTTP/1.1 (keep alive) requests +% t/TEST -http11 -ssl + +run all tests with HTTP/1.1 (keep alive) requests through mod_ssl +% t/TEST -http11 + +run all tests through mod_proxy +% t/TEST -proxy + + + +################## +# Stress testing # +################## + +run all tests 10 times in a random order (the seed is autogenerated +and reported) +% t/SMOKE -times=10 -order=random + +run all tests 10 times in a random order using the seed obtained from +the previous random run (e.g. 2352211): +% t/SMOKE -times=10 -order=2352211 + +repeat all tests 10 times (a, b, c, a, b, c) +% t/SMOKE -times=10 -order=repeat + +When certain tests fail when running with -times option, you want to +find out the minimal sequence of tests that lead to the +failure. Apache::TestSmoke helps to ease this task, simply run: +% t/SMOKE + +which tries various sequences of tests and at the end reports the +shortest sequences found that lead to the same failure. + +for more options do: +% t/SMOKE -help + |