If you have ruby installed in /usr/bin/ruby, and also have Test::WWW::Mechanize installed, you can cd into examples/ (the directory where this README lives) and run the following command after installing the runtests utility:
/usr/bin/ruby
Test::WWW::Mechanize
examples/
runtests
examples $ runtests --execrc my_execrc t -q - <test_urls.txt t/10-stuff..............Failed 1/6 tests (less 2 skipped tests: 3 okay) (1 test unexpectedly succeeded) t/ruby..................ok http://www.google.com/....ok http://www.yahoo.com/.....ok Test Summary Report ------------------- t/10-stuff.t (Wstat: 256 Tests: 6 Failed: 1) Failed tests: 2 TODO passed: 6 Tests skipped: 3-4 Files=4, Tests=10, 3 wallclock secs ( 0.92 cusr + 0.23 csys = 1.15 CPU)
The my_execrc is a file which tells the test harness how to execute any tests it encounters.
my_execrc
The t argument tells it to search in the t/ directory for any tests. One of the tests it finds is written in Ruby, but the my_execrc file tells it how to run this test. If you have Ruby installed but the test fails, try changing the path. If you don't have Ruby installed, you can simply comment out that line in my_execrc, but the test will fail.
t
t/
The - tells runtests to read from STDIN and test_urls.txt is merely a list of URLs we wish to test.
-
STDIN
test_urls.txt
See the documentation for runtests and TAPx::Harness for more information about how to use this.
TAPx::Harness
If you have Term::AnsiColor installed, try running the following (experimental) command:
Term::AnsiColor
runtests --execrc my_execrc -vc t/ - < test_urls.txt
The -v and -c switches tell the harness to be both verbose and to output results in color.
-v
-c
The tprove* harnesses in the examples/bin/ directory are deprecated in favor of the new runtests/TAPx::Harness tools. They are left in primary for curiosity sake, though you may find the tprove_gtk one useful as a reference for how to create a GUI interface for TAPx::Parser.
tprove*
examples/bin/
tprove_gtk
TAPx::Parser
Instead, simple override the desired methods in TAPx::Harness to create your own custom test harness. Don't like how the summary report is formatted? Just override the &TAPx::Harness::summary method and use your new subclass:
&TAPx::Harness::summary
runtests --harness TAPx::Harness::MyHarness
To install TAPx::Parser, copy and paste the appropriate command in to your terminal.
cpanm
cpanm TAPx::Parser
CPAN shell
perl -MCPAN -e shell install TAPx::Parser
For more information on module installation, please visit the detailed CPAN module installation guide.